CentOS编译安装vim8并支持python3

本文参考YouCompleteMe的github上的vim搭建教程,正好可以配合后续安装YouCompleteMe。教程地址:https://github.com/Valloric/YouCompleteMe/wiki/Building-Vim-from-source

1.检查旧vim版本,卸载旧版本安装最新vim8

vim
yum -y remove vim*

2.获取源码编译安装vim8

安装依赖

yum -y install ncurses-devel

安装vim8(我只使用python3,所以.configure配置是我自己的配置)

cd ~
git clone https://github.com/vim/vim.git
cd vim

./configure --enable-multibyte --enable-pythoninterp --with-python-config-dir=/usr/lib64/python2.7/config --enable-python3interp=yes --with-python3-config-dir=/usr/local/python3.7/lib/python3.7/config-3.7m-x86_64-linux-gnu --prefix=/usr/local/vim8

make
make install

这里列举一些 ./configure 后面的配置选项 需要啥自己添加

--with-features=huge:支持最大特性
--enable-multibyte:打开多字节支持,可以在Vim中输入中文
--enable-rubyinterp:打开对ruby编写的插件的支持
--enable-pythoninterp:打开对python编写的插件的支持
--with-python-config-dir=/usr/lib64/python2.7/config 指定python路径(此处是腾讯云CentOS7.4的python2路径)
--enable-python3interp:打开对python3编写的插件的支持
--with-python-config-dir=/usr/local/python3.7/lib/python3.7/config-3.7m-x86_64-linux-gnu 指定python3路径(此处是我指定位置安装python3后的路径,CentOS编译安装python3.7.0)
--enable-perlinterp:打开对perl编写的插件的支持
--enable-luainterp:打开对lua编写的插件的支持
--enable-gui=gtk2:gtk2支持,也可以使用gnome,表示生成gvim
--enable-cscope:打开对cscope的支持
--prefix=/usr/local/vim:指定将要安装到的路径(自行创建)

如果configure出错,先用make distclean清除之前configure产生的文件再configure。
可以不指定VIMRUNTIMEDIR,则只要执行make就好。


注:因为后续还要安装YouCompleteMe插件,YCM插件需要vim支持python2,所以这里python2和python3都有配置。试过只配置python3不配置python2支持会导致插件安装成功后打开.py文件vim就会报错: Vim: Caught deadly signal SEGV Segmentation fault。

注意:指定正确的路径很重要。如果您使用的是Python,则您的config目录可能具有特定于计算机的名称(例如config-3.5m-x86_64-linux-gnu),找到自己的config路径并相应的更改configure里的python路径


安装完成,通过/usr/local/vim8/bin/vim运行vim命令查看版本

/usr/local/vim8/bin/vim --version

创建软链接

ln -s /usr/local/vim8/bin/vim /usr/bin/vim


现在就可以直接运行vim命令

vim --version

仅以此文记录自己安装vim8的过程,当初因为没有指定python3的路径,导致后续安装YouCompleteMe自动补全插件出错,只能重新安装。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值