在Ubuntu中附帶了豐富的軟件,這些軟件一般使用圖形化的自動方式(“添加/刪除”或“新立得”)即可輕松安裝,但是對於那些剛剛問世的新軟件,Ubuntu的源中還未收錄其中,這時我們就需要用到一種更通用的安裝方式:通過手工方式從源文件來安裝這些軟件。下面就介紹這種手工安裝方式的詳細步驟。
一、 安裝編譯程序
因為要編譯源代碼,所以第一步就是安裝編譯和構建之類的程序。如果你已經安裝過了,可以跳過此步。在Ubuntu系統中非常簡單,只要執行下面命令就行了:
$ sudo apt-get install build-essential
該命令執行後,從源文件安裝軟件所需的工具,如gcc、make、g++及其他所需軟件就安裝好了。
二、下載並編譯軟件的源代碼
當我們下載源文件時,一定要弄清該軟件所依賴的庫文件和其他程序,並且首先將它們裝好。這些信息,通常都能在該開源項目的主頁上查找到。做好這些准備工作後,我們就可以進行下面的工作了。因為,軟件的源代碼通常以壓縮文件形式發布,所以需要將其解壓到指定目錄。命令如下所示:
OwnLinux@ubuntu:~$ tar xvzf
program.tar.gz
OwnLinux@ubuntu:~$ cd
program/
如果你的對tar命令不熟悉請點擊這裡閱讀《tar命令詳解》
在Linux下從源文件安裝程序時,有一個通用模式,即配置(./configure)–> 編譯(make) –> 安裝(sudo make install)。但是,此前你最好還是閱讀源文件中附帶的安裝說明,因為對於每個程序,其開發者的指示才是最具權威性的。程序開發者通常將安裝說明存放在名為INSTALL或README。到哪裡找這些文件呢?它們在項目主頁或源代碼主目錄中都能找到。
1.配置
構建應用的第一步就是執行configure腳本,該腳本位於程序源文件的主目錄下:
OwnLinux@ubuntu:~/program$ ./configure
該腳本將掃描系統,以確保程序所需的所有庫文件業已存在,並做好文件路徑及其他所需的設置工作。如果程序所需的庫文件不完全,該配置腳本就會退出,並告訴您還需要哪些庫文件或者是哪些版本太舊需要更新。如果遇到這種情況,僅弄到含有該庫文件的軟件包還是不夠的,同時還要找到具有該庫文件所有頭文件的開發包,在Ubuntu中,這樣的包一般以-dev作為文件名的結尾。安裝好所有需要的庫文件後,重新運行配置腳本,直到沒有錯誤提示為止,這說明需要的庫文件已經全部安裝妥當了即滿足了依賴關系。
2.編譯
當配置腳本成功退出後,接下來要做的就是編譯代碼了。具體操作為在源文件的主目錄中運行make命令:
OwnLinux@ubuntu:~/program$ make
這時,您會看到一串編譯輸出數據迅速從屏幕上滾過,如果正常的話,系統會返回的提示符狀態。然而,如果編譯過程中出現錯誤的話,排錯的過程可就不像配置步驟那麼簡單了。因為,這通常要涉及到源代碼的調試,可能源代碼有語法錯誤,或其他錯誤等等。怎麼辦?如果您是編程高手,那就自己調試吧!否則,檢查該軟件的郵件列表等支持渠道,看看是不是已知的bug,如果是就看看別人是怎麼解決的,不是就提交一份bug報告吧,也許不久就會有解決辦法。
3.安裝
當軟件成功編譯後,最後一步就是將它們安裝到系統上。大部分程序的makefile文件中都會有一個用於安裝的函數。需要注意的是,大多時候我們必須作為root用戶來安裝程序,這樣程序就把文件安裝到/usr或其他只有超級用戶才有寫權限的目錄中。依舊是在源文件的主目錄下,執行如下命令:
OwnLinux@ubuntu:~/program$ sudo make install
好了,這樣程序就會安裝到您的計算機上了。另外,當您不再使用該程序時,可以使用軟件所帶的卸載功能,一般程序都會具備此功能。切換至源文件的主目錄下,執行以下命令即可:
OwnLinux@ubuntu:~/program$ sudo make uninstall
多數情況下,利用上面介紹的方法安裝的程序,都位於/usr/local下面。若想讓安裝的程序文件與Ubuntu巡視的文件系統隔離開的話,可以為命令添加項,如下所示:
OwnLinux@ubuntu:~/program$ ./configure –prefix=/opt
盡管這樣做一般都是有效的,但是也有例外,有些程序根本不理會項;有些程序如含有內核模塊的程序,會把它們自己全部放進您的文件系統。
上面介紹的手工安裝軟件的方法雖然是針對Ubuntu環境來介紹的,但是各種Linux系統下的從源文件安裝應用的方法基本上都大同小異.