天天看點

如何從源代碼一步步編譯Vim 8.0

從源代碼編譯 vim 實際上并不那麼困難。下面是你所要做的:

1、首先,安裝包括 git 在内的所有必備的庫。對于一個 debian 類的 linux 發行版,例如 ubuntu,指令如下:

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 \ 

    python3-dev ruby-dev lua5.1 lua5.1-dev libperl-dev git 

在 ubuntu 16.04 上,lua 開發包的名稱是 liblua5.1-dev 而非 lua5.1-dev。

如果你知道你将使用哪種語言,可随意删去你不需要的包。例如:python2 python-dev 或者是 ruby ruby-dev。這一原則适用于本文的大部分内容。

對于 fedora 20,将是以下指令:

sudo yum install -y ruby ruby-devel lua lua-devel luajit \ 

    luajit-devel ctags git python python-devel \ 

    python3 python3-devel tcl-devel \ 

    perl perl-devel perl-extutils-parsexs \ 

    perl-extutils-xspp perl-extutils-cbuilder \ 

    perl-extutils-embed 

在 fedora 20 上需要這一步來糾正安裝 xsubpp 時出現的問題:

### 從 /usr/bin 到 perl 目錄做個 xsubpp (perl) 的符号連結 

sudo ln -s /usr/bin/xsubpp /usr/share/perl5/extutils/xsubpp  

2、 如果你已經安裝了 vim,删掉它。

sudo apt-get remove vim vim-runtime gvim 

如果是 ubuntu 12.04.2,你或許也需要同時删除下面這些軟體包:

sudo apt-get remove vim-tiny vim-common vim-gui-common vim-nox 

3、 一旦上述内容都被安裝好之後,擷取 vim 源代碼很容易。

注意:如果你使用 python,你的配置目錄或許有一個特定的機器名 (例如 config-3.5m-x86_64-linux-gnu)。檢查 /usr/lib/python[2/3/3.5] 目錄來找到你的 python 配置目錄,據此更改 python-config-dir 和/或 python3-config-dir的參數。

添加/删除下面的編譯參數以适合您的設定。例如,如果您不打算寫任何 lua 腳本,您可以删去 enable-luainterp。

同時,如果你使用的不是 vim 8.0,請确認下面 vimruntimedir 參數設定正确(例如,如果使用 vim 8.0a, 就用 /usr/share/vim/vim80a)。記住,一些 vim 安裝是直接安裝在 /usr/share/vim 下的;調整好參數以适應你的系統:

cd ~ 

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

cd vim 

./configure --with-features=huge \ 

    --enable-multibyte \ 

    --enable-rubyinterp=yes \ 

    --enable-pythoninterp=yes \ 

    --with-python-config-dir=/usr/lib/python2.7/config \ 

    --enable-python3interp=yes \ 

    --with-python3-config-dir=/usr/lib/python3.5/config \ 

    --enable-perlinterp=yes \ 

    --enable-luainterp=yes \ 

    --enable-gui=gtk2 --enable-cscope --prefix=/usr 

make vimruntimedir=/usr/share/vim/vim80 

在 ubuntu 16.04 上,由于同時開啟了 python2 和 python3,python 支援将不工作。 閱讀 chirinosky 的回答 以擷取變通的處理方法。

如果你想将來輕松解除安裝 vim,可以使用 checkinstall 來安裝 。

sudo apt-get install checkinstall 

cd ~/vim 

sudo checkinstall 

否則,可以使用 make 來安裝。

sudo make install 

要讓 vim 成為你預設的編輯器,請使用 update-alternatives。

sudo update-alternatives --install /usr/bin/editor editor /usr/bin/vim 1 

sudo update-alternatives --set editor /usr/bin/vim 

sudo update-alternatives --install /usr/bin/vi vi /usr/bin/vim 1 

sudo update-alternatives --set vi /usr/bin/vim 

4、 再檢查下,通過檢視 vim --version 輸出來确認确實在運作新的 vim 應用程式版本。

如果你的 gvim 不工作(在 ubuntu 12.04.1 lts 上),試着把 --enable-gui=gtk2 參數變為 --enable-gui=gnome2。

如果你遇到問題,仔細檢查在步驟 3 開始提到的,使用正确的 python 配置目錄配置 configure。

這些 configure 和 make 指令假設你是一個 debian 發行版,vim 的運作庫檔案目錄放在 /usr/share/vim/vim80/,這不是 vim 的預設路徑。 在 configure 指令中的 --prefix=/usr 也是如此。這些參數或許對一個不是基于 debian 的 linux 發行版來說是有所不同的,在這種情況下,試着移除 configure 指令中的 --prefix 變量和 make 指令中的 vimruntimedir (換句話說,使用這些參數的預設值)。

如果你遇到麻煩, 這裡是一些其它編譯 vim 的有用的資訊。

作者:val markovic

來源:51cto