Fedora14通过yum安装的(G)VIM版本较低,某些插件(例如:YouCompleteMe)需要较高的版本程序,而且需要(G)VIM支持Phython特性,因此在线安装的(G)VIM不能满足需求。前些天(G)VIM最新版本7.4发布,正好利用它尝尝鲜。
1、如果前面安装过(G)VIM,请先卸载
(G)VIM。在命令行输入: sudo yum remove vim gvim vim-common 。
2、准备编译(G)VIM工具及依赖库,当然了前提是GCC已安装过。
a) 在命令行输入: sudo yum -y install python-devel ncurses 安装python和ncurses;python版本最好在2.7及以上,ncurses版本最好在5.0及以上;
b) 如果打算编译GVIM,继续在命令行输入: sudo yum -y install gtk2-devel glib-devel glib2-devel gtk+-devel libgnome-devel libgnomeui atk-devel libbonoboui-devel cairo-devel libX11-devel libXpm-devel libXt-devel xorg-x11-proto-devel xorg-x11-server-devel libSM-devel mercurial;
c) 如果打算让(G)VIM支持ruby,则继续在命令行输入: sudo yum -y install ruby-devel,并且在后面配置编译时加入ruby选项。
3、下载,进入到压缩文件目录,输入命令: tar -jxvf vim-7.4.tar.bz2;
如果在步骤2-b中,安装了mercurial工具,则可以在命令行输入: hg clone vim 来过的最新的源码,而后可以再通过 hg pull 和 hg update 来更新并重新编译,从而得到最新的版本。这是VIM官方推荐的方法,我的虚拟机通过 hg 命令无法获得源码,也可能是GoogleCode被封了,因此这里直接用了压缩包源码。
4、进入(G)VIM源码目录,在命令输入命令配置GVIM编译选项:
./configure --with-features=huge --enable-rubyinterp --enable-pythoninterp \
--with-python-config-dir=/usr/lib/python2.7/config --enable-perlinterp \
--enable-gui=gtk2 --enable-cscope --enable-multibyte --with-x --enable-sniff \
--enable-fontset
当然了,如果前面编译或者配置过GVIM,先要执行命令:make distclean 来清除旧的配置编译信息。
5、配置结束后,输入命令: make 进行编译;编译结束后,输入命令:sudo make install 来安装GVIM;
GVIM默认安装到 /usr/local/bin 目录下,环境变量$VIMRUMTIME的值为: /usr/local/share/vim/vim74;
如果想安装到/usr/bin目录下,则在配置编译选项时增加: --prefix=/usr;,编译时最好输入: make VIMRUNTIMEDIR=/usr/share/vim/vim74;
6、默认安装结束后,输入 vi/vim都会起到VIM7.4;而输入GVIM后提示找不到 /usr/bin/gvim,因此建立一个软连接: sudo ln -s /usr/local/bin/gvim /usr/bin/gvim;
7、打开GVIM后,有可能菜单栏无法显示,解决方法参考:环境搭建之四:VIM安装及IDE环境搭建-I 中的解决方法二;
8、增加对 Lua 支持,在配置编译环境时增加: --enable-luainterp --with-lua-prefix=/usr;/usr为 Lua 的安装目录(注意: Lua实际路径为:/usr/bin/lua);
至此,GVIM7.4安装完毕。为方便以后编译安装GVIM,特意编写了一个脚本文件,可以放到GVIM源码目录下直接使用,也可以在使用时将GVIM源码目录做为参数,例如:./vim-build-install.sh ~/vim74;脚本代码如下:
-
#Build GVIM and install it.
-
#!/bin/bash
-
-
# check if has source directory parameter
-
if [ $# -ne 0 ] ; then
-
if [ ! -d ${1} ] ; then
-
# if not exist, exit and output error message
-
echo "${1} not exist, stop building!"
-
exit 1
-
else
-
# or existed, enter it
-
cd ${1}
-
fi
-
fi
-
-
# check if 'configure' file exist
-
if [ ! -f "configure" ]; then
-
echo "GVIM configure tool not exist, stop building!"
-
exit 1
-
fi
-
-
#try to clean old cache files
-
echo "try to clean old bulding files ..."
-
make distclean
-
-
#config GVIM building operations
-
#echo "configure GVIM building operations ..."
-
./configure --with-features=huge --enable-rubyinterp --enable-pythoninterp \
-
--with-python-config-dir=/usr/lib/python2.7/config --enable-perlinterp \
-
--enable-gui=gtk2 --enable-cscope --enable-multibyte --with-x --enable-sniff \
-
--enable-fontset --prefix=/usr
-
-
#building GVIM
-
echo "start building GVIM and install it ..."
-
make VIMRUNTIMEDIR=/usr/share/vim/vim74 && sudo make install
阅读(3541) | 评论(0) | 转发(0) |