config、make、make install


.config/    .configure  (查看該目錄下是否有這個文件,如果有makefile,可直接make)  配置

config是一個shell腳本,根據平台的特性生成Makefile文件,為下一步的編譯做准備,

可以通過在 configure 后加上參數來對安裝進行控制,比如:

./configure --prefix=/usr    (將該軟件安裝在 /usr 下面)

可以通過 ./configure --help 查看詳細的說明幫助

 

如果有需要,會進行 make depend

(一種makefile的規則,通過掃描一個目錄下的所有C\C++ 代碼,從而判斷出文件之間的依賴關系,如a.cc文件中調用了b.h(如以形勢include<b.h>),如果之后a.cc文件被改動,那么只需要重新編譯a.cc文件,不需要編譯b.h文件。否則所有的文件都需要重新編譯)

make  編譯

從Makefile中讀取指令,根據makefile制定的規則,將c\c++文件編譯成*.o文件,然后進一步生成可執行文件。大多數的源代碼包都經過這一步進行編譯,(當然有些perl或python編寫的軟件需要調用perl或python來進行編譯)。

如果 在make過程中出現 error ,你就要記下錯誤代碼(注意不僅僅是最后一行),然后你可以向開發者提交 bugreport(一般在 INSTALL 里有提交地址),或者你的系統少了一些依賴庫等,這些需要自己仔細研究錯誤代碼

make test / make check

顧名思義,這一步就是對上一步 make 的檢查了,要確保 make 是沒有錯誤的,也就是這一步的 test、check要全部是 OK 的,error 為0

sudo make install  安裝

這一步是用來安裝的,它也從Makefile中讀取指令,安裝到指定的位置

這條命令來進行安裝,一般需要你有 root 權限(因為要向系統寫入文件),所以前面用了 sudo


流程:

在Linux下安裝一個應用程序時,一般先運行腳本configure,然后用make來編譯源程序,在運行make install,最后運行make clean(刪除源代碼(C\C++ code)生成的執行文件和所有的中間目標文件)刪除一些臨時文件。
這些都是典型的使用GNU的AUTOCONF和AUTOMAKE產生的程序的安裝步驟。

 


絕大數開源軟件都是公布源代碼的,源代碼一般被打包為tar.gz歸檔壓縮文件,然后手工編譯為二進制可執行文件

./configure  檢查編譯環境/相關庫文件/配置參數,生成makefile

make      對源代碼進行編譯,生成可執行文件

make install    將生成的可執行文件安裝到當前計算機中

特點;

兼容性好/可控制性好/開源軟件會大量使用其他開源軟件的功能,要解決大量的依賴關系

 


免責聲明!

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



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