Linux 下源码编译安装vim并添加python3支持

请注意,本文在Ubuntu 18.04.2 LTS下测试完成。以下命令中的参数,需要根据您的系统环境进行相应调整。

前置条件

首先确请认已安装Python3。关于安装和配置信息,请访问Python网站。

使用以下命令,安装 python3-dev、library

$ sudo apt-get install python3-dev
$ sudo apt-get install libncurses5-dev

使用以下命令,查看当前Python3安装情况:

$ which python3 
/usr/bin/python3
$ whereis python3  # 查看安装目录
python3: /usr/bin/python3 /usr/bin/python3.6 /usr/bin/python3.6m /usr/bin/python3.6m-config /usr/lib/python3 /usr/lib/python3.6 /usr/local/lib/python3.6 6 /usr/share/man/man1/python3.1.gz

注意: 不要随意删除系统自带的python 至于为什么可以参考 删除系统 Python 引发的惨案

安装Vim

使用Git命令,将Vim源码复制到本地:

$ git clone https://github.com/vim/vim.git

切换到下载的Vim源码目录:

$ cd vim
$ git pull

编译安装 Vim:

$ cd src
$ sudo make distclean  # 如果您以前构建Vim
$ ./configure --with-features=huge \
--enable-multibyte \
--enable-python3interp \
--enable-cscope \
--enable-gui=auto \
--enable-gtk2-check \
--enable-fontset \
--enable-largefile \
--disable-netbeans \
--with-compiledby="[email protected]" \
--enable-fail-if-missing \
--prefix=/usr/local 
$ sudo make
$ sudo make install

你可以通过查看 src/auto/configure 来获得特性和包的列表。 下面是我用到的。

--with-features=huge        # 支持最大特性
--enable-multibyte          # 打开多字节支持,可以在Vim中输入中文
--enable-pythoninterp       # 打开对 Python 编写的插件支持 默认内置支持 指定 dynamic 参数则动态支持
--with-python-config-dir    # 指定 Python 路径
--enable-python3interp      # 打开对 Python3 编写的插件支持 默认内置支持 指定 dynamic 参数则动态支持
--with-python3-config-dir   # 指定 Python3 路径
--enable-cscope             # 打开对cscope的支持
--enable-gui=auto           # 根据可用的GUI库自动构建
--enable-gtk2-check         # 如果自动选择GUI,请检查GTK default=yes
--enable-fontset            # 包括X fontset输出支持
--enable-largefile          # 提供对大文件的支持
--disable-netbeans          # 禁用NetBeans集成支持。
--with-compiledby           # 版本消息中显示的名称
--enable-fail-if-missing    # 如果依赖于其他特性,则失败
--prefix                    # 用于指定生成可执行文件的位置

执行以下命令将显示已使用新编译的Vim:

$ which vim
/usr/local/bin/vim

执行以下命令,将显示新编译的 Vim 已包含的 Python 特性:

$ vim --version | grep python
+comments          +libcall           +python/dyn        +visual
+conceal           +linebreak         +python3/dyn       +visualextra

其中,与Python相关的特性主要包括:

  • +python,内置支持Python 2;
  • +python3,内置支持Python 3;
  • +python/dyn,动态支持Python 2;
  • +python3/dyn,动态支持Python 3;

根据以上步骤,我们保持/usr/bin目录下预装的Vim不变,另外在/usr/local/bin目录下安装了自已编译的Vim。

卸载Vim

使用以下命令,可以重置编译操作:

$ sudo make distclean

使用以下命令,可以卸载Vim:

$ sudo make uninstall

你可能感兴趣的:(Linux 下源码编译安装vim并添加python3支持)