沒有root權限的情況下安裝vim


Problem

最近工作中遇到個問題,就是開發是在服務器上,沒有desktop沒有UI的那種,想來想去也就只能用vim了。
但是服務器上的vim版本比較低,一些插件都安裝不了。想更新vim呢,又沒有root權限,不能直接升級軟件包。
看來只能走源碼編譯這條路了。但是還有個問題,就是vim編譯所需的環境,也得源碼編譯。
好在找到了一篇博客,詳細介紹了這個方法,我就引用過來,做個記錄了。
原文:Install vim without sudo access

Solution

1. 下載 ncurses 源碼並編譯安裝

這是編譯vim所必需的。
先下載源碼:

$ wget http://ftp.gnu.org/pub/gnu/ncurses/ncurses-6.2.tar.gz

這里下載的是6.2版本,實際上可能已經又更新的版本發布了,可以去 http://ftp.gnu.org/pub/gnu/ncurses/ 這里查看一下。
然后解包,進入源碼目錄。

tar -xvf ncurses-6.1.tar.gz
cd ncurses-6.1

接下來編譯。由於我沒有root權限,因此需要將這個軟件包安裝在自己的用戶目錄下。所以用configure來指定安裝目錄。

$ ./configure --prefix=$HOME/usr/local
$ make -j
$ make install 

2. 新增庫路徑

我們需要把剛才的用戶目錄下的安裝路徑,添加到系統環境變量中,否則編譯vim時將找不到剛剛安裝好的ncurses。
用任意編輯器打開~/.bashrc,然后添加如下語句:

export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$HOME/usr/local/lib

使之生效:

$ source ~/.bashrc

3. 下載 vim 源碼並編譯安裝

首先下載(需要安裝有 git):

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

然后進入源碼目錄,先配置(configure)再編譯安裝。注意在configure的時候需要指定依賴庫目錄和編譯好之后的安裝目錄:

$ cd vim
$ LDFLAGS=-L$HOME/usr/local/lib ./configure --prefix=$HOME/usr/local
$ make -j
$ make install

4. 替換系統vim

雖然此時vim已經編譯安裝了,但是系統的vim依然還在。我們需要指定一下使用vim的時候,到底用的是哪個vim
~/.bashrc中添加如下語句:

export PATH=\$PATH:\$HOME/usr/local/bin
alias vi=vim

使其生效:

$ source ~/.bashrc

到這里就已經安裝好vim了。可以通過which vim指令來確定自己用的是哪個vim
Enjoy!


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM