Ubuntu14.04下编译安装Vim74+Vim-gdb
一、准备工作
1、下载Vim74和适合7.4版本的vim-gdb:
2、卸载已存在的vim以及相关组件
如果已经通过软件中心安装了vim,则需要将其卸载
sudo apt-get remove vim vim-runtime gvim
可能还需要移除以下的包:
sudo apt-get remove vim-tiny vim-common vim-gui-common
3、安装依赖环境
手动编译安装Vim74,首先先安装编译所需的依赖库和头文件。
sudo apt-get build-dep vim
然后再编译,如果依赖问题没有解决可能会出现这个提示:
no terminal library found checking for tgetent()... configure: error: NOT FOUND! You need to install a terminal library; for example ncurses. Or specify the name of the library with --with-tlib.
也可手动安装以下的库等解决依赖,为了保险起见,最好还是执行一下。
sudo apt-get install libncurses5-dev libgnome2-dev libgnomeui-dev libgtk2.0-dev libatk1.0-dev libbonoboui2-dev libcairo2-dev libx11-dev libxpm-dev libxt-dev python-dev ruby-dev mercurial
二、不需要vimgdb的Vim安装
将下载的vim74源码包解压出来,进入解压出来的文件目录,编译
cd ~/downloads/vim74/ ./configure --with-features=huge --enable-rubyinterp --enable-pythoninterp --with-python-config-dir=/usr/lib/python2.7/config-x86_64-linux/ --enable-perlinterp --enable-gui=gtk2 --enable-cscope --enable-luainterp --enable-multibyte --enable-xim --prefix=/usr
参数说明:
--with-features=huge:支持最大特性
--enable-rubyinterp:启用Vim对ruby编写的插件的支持
--enable-pythoninterp:启用Vim对python编写的插件的支持
--enable-luainterp:启用Vim对lua编写的插件的支持
--enable-perlinterp:启用Vim对perl编写的插件的支持
--enable-multibyte 和 --enable-xim:需要在Vim中输入中文,开启这两个特性
--enable-cscope:Vim对cscope支持
--enable-gui=gtk2:gtk2支持,也可以使用gnome,表示生成gvim
--with-python-config-dir=/usr/lib/python2.7/config-x86_64-linux-gnu/ 指定 python 路径,这是python2在ubuntu64位机子上的路径,32位应该为/usr/lib/python2.7/config-i386-linux-gnu/
--prefix=/usr:设定编译安装路径,注意自己是否有权限访问。
如果configure出错,先用make distclean清除之前configure产生的文件再configure。
最后make一下然后安装,因为设定的路径/usr普通用户不具有写入权限,所以需要以sudo来安装。
可以不指定VIMRUNTIMEDIR,则只要执行make就好。
make VIMRUNTIMEDIR=/usr/share/vim/vim74
sudo make install
如果想要卸载,suo make uninstall以下就好。
检验自己是否安装成功,可以运行vim --version来看看,可以检查某些特性是否已经开启。有加号的表示特性已开启。
三、带有vimgdb的vim安装
1、安装vim
将vim74的源码包和vimgdb的补丁包都解压到ome的Downloads下
:~/Downloads$ ls vim74 vim-7.4.tar.bz2 vimgdb-for-vim7.4-master vimgdb-for-vim7.4-master.zip
然后切换到当前目录下,打补丁
patch -p0 < vimgdb-for-vim7.4-master/vim74.patch
接下来切入到vim74/src,make安装。
cd vim74/src make sudo make install
默认的当前目录下Makefile设置的特性等都能满足一般需求,如果需要添加路径或做些修改等,只要对这个文件进行编辑就好。我将里面的路径改动了,因为默认的/opt/bin这个路径不在我的$PATH里面,而默认却将vim的bin文件放在这里,导致执行vim会找不到命令。如果不作修改,可以将此路经添加到$PATH里面就好。
打开之,搜索/opt,按照注释的说明,将BINDIR, MANDIR, DATADIR这三行注释掉即可。改完之后的这三行如下:
# Uncomment the next line to install Vim in "/usr/bin"
#BINDIR = /opt/bin
# Uncomment the next line to install Vim manuals in "/usr/share/man/man1"
#MANDIR = /opt/share/man
# Uncomment the next line to install Vim help files in "/usr/share/vim"
#DATADIR = /opt/share
然后make安装。我在我的ubuntu上虽然安装成功,但是执行vim失败,出现“Vim:Caught deadly signal ABRT”之类的错误。解决方法是在make是添加CFLAGS="-O2 -D_FORTIFY_SOURCE=1",则为:
make CFLAGS="-O2 -D_FORTIFY_SOURCE=1"
然后再执行sudo make install,则最后将vim安装到/usr/local/share/vim/vim74下。
如果想要通过执行configure设置一些特性和安装路径,那么记得加--enable-gdb,且是在vim74/src目录下执行,不是上面不添加vimgdb的直接在vim74目录下执行configure
./configure --with-features=huge --enable-rubyinterp --enable-pythoninterp --with-python-config-dir=/usr/lib/python2.7/config-x86_64-linux/ --enable-perlinterp --enable-gui=gtk2 --enable-cscope --enable-luainterp --enable-multibyte --enable-xim --enable-gdb --prefix=/usr
再检查一下Makefile里面的BINDIR, MANDIR, DATADIR ,保证将它们三行注释了。然后make,添加VIMRUNTIMEDIR,以及安装:
make VIMRUNTIMEDIR=/usr/share/vim/vim74 CFLAGS="-O2 -D_FORTIFY_SOURCE=1" sudo make install
最后安装完了的vim的目录在/usr/share/vim/vim74下。
运行vim --version检查以下gdb这一项特性前是否有加号,如果有,则表示vimgdb安装成功。
2、安装vimgdb运行环境
将vimgdb-for-vim7.4-master/vimgdb_runtime下的文件复制到运行时路径(runtime path)。可以在vim里面执行:set runtimepath?来找到runtimepath。通过执行echo $VIMRUNTIME来查看安装路径。可以看到有好几个路径,~/.vim是当前用户下的,/usr/share/vim/vim74是所有用户的(这是设置了安装路径之后的,默认的路径应该在/usr/share/vim/vim74)。
然后切换到刚才选择将vim runtime路径,打开vim,执行“:helptags .”(注意,没有引号,helptags后面有一个空格和点,点表示当前目录。),这样就能使用“:help vimgdb”来打开vimgdb的帮助文档。
四、参考文档
3、vi/vim使用进阶: 在VIM中使用GDB调试 – 使用vimgdb
4、添加vimgdb导致vim虽成功安装却不能运行的解决办法
5、vim crashes on startup when compiled with -O3 but works with -O2
郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。