以安裝vim為例。
(vim 是vi的升級版本,它不僅兼容vi的所有指令,而且還有一些新的特性在里面)。
1.獲取源文件
首先進入/usr/local下(只是為了方便處理安裝文件,位置隨意)
用git clone下vim的源文件,執行命令:sudo git clone https://github.com/vim/vim.git,也可以使用wget的方式,僅僅是為了獲取源文件。
使用命令進入到vim文件夾,ls查看
這些都是vim的源文件。
2.configure命令
configure:是一個shell腳本,它在源文件的根目錄中。他的作用是檢查你的系統中是否有編譯這個程序依賴的其它庫之類的東西。
prefix 參數——指定目標安裝路徑,必須指定,否則不知道默認安裝到哪里,不方便以后的管理(類似windows的安裝路徑)。
命令全文: sudo ./configure --prefix=/usr/local/vimdir ( prefix后的路徑隨意; 另外 ./configure “./”——表示當前目錄,這個是相對路徑。)
執行后,可能會遇到問題:
錯誤提示:no terminal library found
解決方法:
sudo apt-get update
sudo apt-get install libncurses5-dev
安裝完terminal library,再重新運行configure腳本,成功!
3.make
make指令最基本的功能就是通過makefile文件來描述源程序之間的相互關系並自動維護編譯的工作。
Makefile:這個文件是按照特定的語法編寫的,文件中說明了,如何編譯的各個源文件並鏈接生成可執行文件,並要求定義源文件之間的依賴關系。
簡單的說:定義好源文件之間的依賴關系,並編譯生成可執行性文件(這里是編譯,不是檢查)。
完整命令: sudo make
4.make install:
執行安裝,在執行configure的時候prefix指定的安裝路徑也是在此時創建出來的。
完整命令: sudo make install
到此為止,vim就在bin目錄下。執行:/usr/local/vimdir/bin/vim下了。
5.ln命令軟鏈接
一般用vim的時候,無論在任何地方輸入vim都可以,但是現在就不行。只能到這個/usr/local/vimdir/bin/目錄下執行./vim才能執行。
原因:
系統對應的所有的指令目標目錄的路徑,只有上述的這些,並沒有新裝的 /usr/local/vimdir/bin,所以當我們在非此目錄輸入 vim 時,會提示未安裝。
解決方法:
建立一個軟連接到/usr/bin目錄下:
完整命令:
sudo ln -s /usr/local/vimdir/bin/vim /usr/bin/vim