Linux 应用程序的源码包如何安装?
文章目錄
- configure
- make
- make install
- 關于文件 configure 的簡單介紹
- 其它命令簡介
C 語言開發的應用程序的源碼包常以 .tar.gz 為擴展名,并且這些源碼包通常使用 GNU 的 AUTOCONF 和 AUTOMAKE 生成編譯配置文件,我們拿到這樣的軟件包后,執行下面的安裝三部曲就可以完成安裝了。
想要了解 AUTOCONF 和 AUTOMAKE 這兩個東西到底是干什么的,猛戳此鏈接:https://www.zhihu.com/question/22644913
configure
你需要進入到源碼包的根目錄中,再執行這個命令,該命令會對你的系統進行編譯環境檢測,并且會生成符合 GNU 規范的文件 Makefile,為下一步的編譯做準備,你可以通過加上參數來對安裝進行控制,比如代碼:
./configure –prefix=/usr說明:
執行命令 configure 必須要指明具體的路徑,該指令文件在源碼包的根目錄下,所以指定相對路徑 ./configure 就可以執行了,為什么要指定具體的路徑?因為系統根本不知道你的指令文件在哪里,那些不要你指明具體路徑就可以直接執行的指令是因為這些指令文件所在目錄早已配置到環境變量 PATH 中了,但是你下載的源碼包的根目錄根本不在環境變量 PATH 中,所以當然需要你自己指明才行。
–prefix=/usr 意思是將該軟件安裝在 /usr 下面,執行文件就會安裝在 /usr/bin (而不是默認的 /usr/local/bin),資源文件就會安裝在 /usr/share(而不是默認的 /usr/local/share)。具體可以使用哪些選項,你可以通過 ./configure --help 察看詳細的幫助說明。
make
這一步就是編譯,大多數的源代碼包要通過這一步進行編譯(當然有些 perl 或 python 編寫的軟件需要調用 perl 或 python 來進行編譯)。如果在 make 過程中出現 error ,你就要記下錯誤代碼,然后你可以向開發者提交 bugreport(一般在 INSTALL 里有提交地址),也可能是你的系統少了一些依賴庫導致的錯誤,這些需要自己仔細研究錯誤代碼。
比如錯誤提示:
make: *** 沒有指明目標并且找不到 Makefile。 停止。問題很明了,沒有 Makefile,怎么辦,原來是要先 ./configure 一下,再執行編譯命令 make。
make install
這條命令用來進行安裝程序的,當然有些軟件需要先運行 make check 或 make test 來進行一些檢測,這一步一般需要你有 root 權限(因為要向系統寫入文件)。安裝成功后通常你還可以執行 make clean 刪除一些臨時文件。
如果用 bin_PROGRAMS 宏的話,程序會被安裝至 /usr/local/bin 這個目錄。
關于文件 configure 的簡單介紹
文件 configure 是一個 shell 腳本,AUTOCONF 和 AUTOMAKE 就是用來生成文件 configure 的。這個腳本文件可以自動設定源程序以符合各種類 Unix 操作系統的特性,并且根據系統變量及環境產生合適的 Makefile 文件或是 C 的頭文件(header file),讓源代碼程序可以很方便地在這些不同的系統上被編譯連接。
其它命令簡介
總結
以上是生活随笔為你收集整理的Linux 应用程序的源码包如何安装?的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 问男生真心话问题大全推荐103个
- 下一篇: 1pcs是多少克