轉:configure/make/make install的做用 linux 安裝 卸載 make uninstall

這些都是典型的使用GNU的AUTOCONF和AUTOMAKE產生的程序的安裝步驟。

./configure 是用來檢測你的安裝平臺的目標特徵的。好比它會檢測你是否是有CC或GCC,並非須要CC或GCC,它是個shell腳本。

make 是用來編譯的,它從Makefile中讀取指令,而後編譯。

make install 是用來安裝的,它也從Makefile中讀取指令,安裝到指定的位置。

AUTOMAKE和AUTOCONF 是很是有用的用來發布C程序的東西。若是你也寫程序想使用AUTOMAKE和AUTOCONF,能夠參考CNGNU.ORG上的相關文章。

--End--


一、configure ,這一步通常用來生成 Makefile,爲下一步的編譯作準備,你能夠經過在 configure 後加上參數來對安裝進行控制,好比python

代碼:
./configure --prefix=/usr
    上面的意思是將該軟件安裝在 /usr 下面,執行文件就會安裝在 /usr/bin (而不是默認的 /usr/local/bin),資源文件就會安裝在 /usr/share(而不是默認的/usr/local/share)。同時一些軟件的配置文件你能夠經過指定 --sys-config= 參數進行設定。有一些軟件還能夠加上 --with、--enable、--without、--disable 等等參數對編譯加以控制,你能夠經過容許 ./configure --help 察看詳細的說明幫助。
./configure --prefix 做用
不指定
prefix,則可執行文件默認放在/usr/local/bin,庫文件默認放在/usr/local/lib,配置文件默認放在/usr/local/etc。其它的資源文件放在/usr/local/share。你要卸載這個程序,要麼在原來的make目錄下用一次make uninstall(前提是make文件指定過uninstall),要麼去上述目錄裏面把相關的文件一個個手工刪掉。
指定prefix,直接刪掉一個文件夾就夠了。

    二、make ,這一步就是編譯,大多數的源代碼包都通過這一步進行編譯(固然有些perl或python編寫的軟件須要調用perl或python來進行編譯)。若是在 make 過程當中出現 error ,你就要記下錯誤代碼(注意不單單是最後一行),而後你能夠向開發者提交 bugreport(通常在 INSTALL 裏有提交地址),或者你的系統少了一些依賴庫等,這些須要本身仔細研究錯誤代碼。

    三、make insatll ,這條命令來進行安裝(固然有些軟件須要先運行 make check 或 make test 來進行一些測試),這一步通常須要你有 root 權限(由於要向系統寫入文件)。

4  卸載   make uninstall
相關文章
相關標籤/搜索