首页 > 在CentOS 6.6 64bit上基于源码安装全功能的vim 7.4实录

在CentOS 6.6 64bit上基于源码安装全功能的vim 7.4实录

CentOS 6.6 64bit上默认的vim版本是7.2 minimal,通过下面的命令查看

yum list installed | grep vim

我打算将其卸载并重新安装官网最新版vim 7.4, 假设下面的操作都使用root权限进行

本次基于源码安装的vim 7.4要求具有如下特色:

(1)支持python/lua/perl/ruby/X11等

(2)同时支持python 2.7和python3.5两种版本

(3)尽量在CentOS 6.6原有软件基础上改造,仅将默认python 2.6升级到python 2.7,安装了ruby,其它的lua,perl都是遵从原来的版本





1.卸载自带vim

yum remove vim vim-enhanced vim-common vim-minimal  





2.下载并解压vim-7.4

wget ftp://ftp.vim.org/pub/vim/unix/vim-7.4.tar.bz2  

wget ftp://ftp.vim.org/pub/vim/extra/vim-7.2-extra.tar.gz

wget ftp://ftp.vim.org/pub/vim/extra/vim-7.2-lang.tar.gz

tar jxvf vim-7.4.tar.bz2  

tar zxvf vim-7.2-extra.tar.gz  

tar zxvf vim-7.2-lang.tar.gz  

mv vim72 vim74  



3.安装编译环境所依赖的软件包

请确保系统内有至少2.5版本的python,增加对python,ruby,perl ,lua,cscope的支持,注意需要先安装对应的编程语言

yum -y install ncurses-devel readline-devel lua-devel ruby ruby-devel python-devel

yum -y install libyaml zlib zlib-devel perl-ExtUtils-Embed 

yum -y install libXt-devel gtk2-devel



4.编译安装 

cd vim74/src  

./configure --with-features=huge --enable-pythoninterp --with-python-config-dir=/usr/local/python2710/lib/python2.7/config --enable-python3interp --with-python3-config-dir=/usr/local/lib/python3.5/config-3.5m/ --enable-rubyinterp --enable-perlinterp --enable-luainterp --with-lua-prefix=/usr --enable-cscope  --enable-multibyte  --enable-gui=auto --enable-xim  --with-x --enable-fontset --enable-sniff --disable-selinux 

make  

make install 





5.遇到的问题和说明

(1)如果要编译python3的模块进vim7.4, 需要指定config目录, 需要在编译的时候要换上这个

--enable-python3interp --with-python3-config-dir=/usr/local/lib/python3.5/config-3.5m/

vim -version | grep +python3

这里python2.7和python3.5都是根据我自定义的安装位置来设置的,请根据您的环境做恰当修改

python 2.7的升级过程参见本博文章

http://blog.csdn.net/tao_627/article/details/46928899

python 3.5的安装过程参见本博文章

http://blog.csdn.net/tao_627/article/details/49979251

(2)config过程非常重要,在配置之前,先学习一下各配置选项

./configure -h



(3)经常会遇到如下情况:

config中添加了ruby,lua等选项,但是安装后才发现ruby,lua都没有支持

没有图形界面,没有python、lua、perl、ruby接口,这是问什么呢?

用./config命令时,仔细看输出信息,界面需要的库没有安装的话,会自动屏蔽gui

configure输出太长不方便看的话,可以看src/auto/config.log,里面有详细记录

(4)在编译过程中,出现编译错误,都可以立即停下来,安装相应的依赖模块,再

make clean

make

(5)在configure时发现有问题,可以立即停下来,直接修改相应配置选项,或者重新走一遍流程,一定要记得再次configure之前,最好要删除src/auto/config.cache文件,以免造成不必要的干扰

make uninstall  

make clean  

rm -f src/auto/config.cache



6.验证安装

vim --version

验证对各语言的安装

vim --version | grep python

vim --version | grep lua

vim --version | grep perl

其中带+号的为支持,带-号的为不支持



查看vim所在的目录

which vim

/usr/local/bin/vim



7.设置别名

安装新版后,发现vim的别名vi命令没有了。可以自己重新设定

echo "alias vi=‘vim‘" >> /etc/profile

source /etc/profile



8.安装其它插件

yum -y install ctags cscope



9.参考文献

[1].http://esazx.blog.163.com/blog/static/123997992201452932645671/

[2].http://tieba.baidu.com/p/2698036713

[3].http://www.tuicool.com/articles/rUNfMbJ

[4].http://blog.csdn.net/stone_age/article/details/47276995  gvim

更多相关:

  • 在macOS安装软件,首选工具当然是HomeBrew,怎么安装请自行百度。 vim在macOS Sierra(10.12.2)上的默认版本是7.4,但是我希望尽可能升级到最新的vim版本,并且尽量具有最多的功能和对更多编程语言的支持。而这一切使用HomeBrew安装vim可以轻松搞定。下面是我实践之后总结出来的结果,以作备忘。 1...

  • 如果你要在VIM中增加诸如YouCompleteMe这一类的插件的话,那么你需要VIM有Python的支持,这个是在一开始编译的选项里指定的。 我一开始怀着美好的愿望,希望vim能完美支持Python2和Python 3,所以,我在源码编译vim 7.4时加入了对Python这两个版本的支持。 另外,我也安装了YouComplet...

  • 在CentOS 6.3 64bit上一个没有配置好的vim中,修改了一个python脚本,运行时就反复报错,说 IndentationError: unexpected indent python 怎么调整格式都不对,这才真正领教了python格式对齐的厉害。没方法只好用xshell将该文件转到原来的Ubuntu 14.04下面...

  • 在CentOS 6.2上搭建vim开发环境...

  • 如果你想在自己的IPhone上安装一个ipa文件,你的手机是无法正常安装的,(越狱,企业证书分发除外)但是我们可以通过以下步骤来实现,前提要有自己的开发者账号。接下来就看一下具体的步骤:第一步:用Xcode新建一个工程Bundle identifier不要和手机中已有的的APP重复,然后用自己的证书打包出ipa文件。第二步:获取mob...

  • 刚接触,啥子都不会,按着教程走需求:识别图片中的文字信息环境:windows系统开发语言:python3.5使用工具类:1.pyocr2.PIL3.tesseract-ocr步骤:1.pyocr网络通直接使用命令:pip install pyocr网络不通,转至https://pypi.python.org/pypi/pyocr/0....

  • 1、前言程序设计好以后会生成若干可执行文件和依赖文件。为了方便程序被更好地使用,需要将程序封装为一个安装程序。2、平台和环境Windows系统安装NSIS下载地址:https://nsis.sourceforge.io/DownloadNSIS(Nullsoft Scriptable Install System)是一个开源的 Win...

  • 展开全部 f=open('xxx','r',encoding='utf-8') file=f.readlines() f.close() f=open('xxx','w',encoding='utf-8') for i in len(file): ----file[i]=file[i].split(',') ----file[i][1...

  • PIL(Python Imaging Library)是Python中一个强大的图像处理库,但目前其只支持到Python2.7 pillow是PIL的一个分支,虽是分支但是其与PIL同样也具有很强的图像处理库。 Python3.7.0 如何安装pillow 此安装方法在windows7环境下完成: >>>win+r调出运行窗口,键入c...

  • 出品 | FlyAI编译 | 林椿眄编辑 | DonnaPython 已经成为机器学习及其他科学领域中的主流语言。它不但与多种深度学习框架兼容,而且还包含优秀的工具包和依赖库,方便我们对数据进行预处理和可视化操作。据最新消息,到2019 年底,Numpy 等很多科学计算工具包都将停止支持Python 2版本,而 2018 年后 Num...

  • 转载: 简单回答题主的问题,如果编程零基础,建议以python入门,但是并不建议以此作为数据分析的全部。R可以说是必须要学的,除此两者以外的,可以泛泛的关注。 =================================分割线================================= 下面详细说一下自己的看法,仅仅是个人...

  • 随着人工智能时代的来临,Python开始崭露头角并迅速吸引了人们的广泛关注。很多人想要从事Python开发,但零基础入门Python,需要了解什么呢?看看你都掌握了吗? 1.Python是如何被解释执行的? Python是一种解释型语言,它可以直接从源代码运行程序。程序员编写的源代码首先转变成一种中间语言代码,然后再被转换成能够直接执...

  • 该文章为转载内容,请关注文章作者博客https://blog.csdn.net/io569417668 Open3D是一个开源库,支持快速开发和处理3D数据。Open3D在c++和Python中公开了一组精心选择的数据结构和算法。后端是高度优化的,并且是为并行化而设置的。 本系列学习计划有Blue同学作为发起人,主要以Open3D官...

  • 在python中利用urllib2或是pycurl都可以实现http POST请求功能,下面是源码: #!/usr/bin/env python #encoding: utf-8 #description: demo a simple post form #date: 2015-12-14import urllib, urllib...