
您不必是程序員就可以從源代碼構建程序並將其安裝在您的系統上;你只需要了解基礎知識。只需幾個命令,您就可以像專業人士一樣從源代碼構建。
安裝所需的軟件
在Ubuntu的軟件包存儲庫中安裝build-essential軟件包會自動安裝從源代碼編譯所需的基本軟件,如GCC編譯器和其他實用程序。通過在終端中運行以下命令來安裝它:
sudo apt-get install build-essential

獲取源包
現在您需要所需應用程序的源代碼。這些包通常使用.tar.gz或.tar.bz2文件擴展名的壓縮文件。
作為一個例子,讓我們嘗試從源代碼編譯Pidgin - 也許還有一個尚未打包的新版本,現在我們想要它。找到程序的.tar.gz或.tar.bz2文件並將其保存到您的計算機。

使用此命令提取.tar.gz文件:
tar -xzvf file.tar.gz
或使用此命令提取.tar.bz2文件:
tar -xjvf file.tar.bz2


解決依賴關係
進入解壓縮目錄後,運行以下命令:
./configure
(請注意,某些應用程序可能不使用./configure。請檢查應用程序解壓縮文件夾中的“README”或“INSTALL”文件,以獲取更具體的說明。)

./configure命令檢查系統以獲取構建程序所需的軟件。

sudo apt-get install intltool
安裝所需軟件後,再次運行./configure命令。如果您需要安裝其他軟件,請使用以下命令重複此過程 sudo apt-get install 命令直到./configure成功完成。並非每個必需的包都具有您在錯誤消息中看到的確切名稱 - 您可能需要Google的錯誤消息來確定所需的包。
如果您嘗試編譯的程序的舊版本已經在Ubuntu的軟件存儲庫中,那麼您可以使用 sudo apt-get build-dep 命令。例如,如果我跑 sudo apt-get build-dep pidgin ,apt-get將自動下載並安裝我編譯Pidgin所需的所有依賴項。如您所見,您需要的許多軟件包都以此為終結 -dev.


編譯和安裝
使用以下命令編譯程序:
make
此過程可能需要一些時間,具體取決於您的系統和程序的大小。如果./configure成功完成,make應該沒有任何問題。當程序編譯時,您將看到文本行滾動。

此命令完成後,程序已成功編譯 - 但它未安裝。使用以下命令將其安裝到您的系統:
sudo make install
它可能存儲在您系統上的/ usr / local下。 / usr / local / bin是系統路徑的一部分,這意味著我們只需輸入“ 洋涇浜 “進入一個終端,不用大驚小怪地發射Pidgin。

sudo make uninstall
Ubuntu的Update Manager不會自動更新以這種方式安裝的程序,即使它們包含安全漏洞也是如此。除非您需要特定的應用程序或版本不在Ubuntu的軟件存儲庫中,否則堅持使用您的發行版的官方軟件包是個好主意。
我們在這裡沒有涉及很多高級技巧 - 但是,希望編譯自己的Linux軟件的過程不再那麼可怕了。