原始碼編譯安裝軟體包

2022-06-26 02:45:12 字數 1545 閱讀 9885

1、準備編譯環境,linux中絕大多數軟體的原始碼都是用c語言寫的,少部分用c++或其他語言編寫。因此想要編譯源**需要先按照gcc編譯器和gcc-c++編譯器。

# 安裝編譯器和常用庫

yum groupinstall -y "development tools"

yum install -y gcc gcc-c++ autoconf automake make

yum instlal zlib zlib-devel openssl openss-devel pcre pcre-devel

2、獲取原始碼包

# 如nginx原始碼包

wget

3、解壓

# 解壓tarball

tar xvf nginx-1.18.0.tar.gz -c /tmp

4、編譯環境檢查

軟體開發者會寫好乙個檢查環境的程式放在tarball中,通常叫做configure或者config。主要功能的有:

# 進入原始碼包,執行configure

cd /tmp/nginx-1.18.0/

./configure --prefix=/usr/local/nginx-1.18.0

# 常用選項有:

--prefix=/usr/local/path # 定義安裝路徑

--enable- # 啟用某功能

--disable- # 禁用某功能

--help # 查詢幫助資訊

一般情況下,都應該將軟體安裝至/usr/local目錄下以程式包名+版本號命名的目錄中,這樣方便統一管理。

5、編譯和編譯安裝

編譯和編譯安裝都是使用make這個命令,make會呼叫編譯器,並讀取makefile檔案中的資訊進行系統軟體編譯。

make # 編譯

按makefile檔案編譯,可以使用-j選項指定多顆cpu編譯。

make install # 編譯安裝

# 通常為了方便,我們可以將兩條命令寫一起

make && make install

整個過程不保錯,即為安裝成功。

安裝過程中,如果出現 」error「 或 」warning「 且安裝過程停止,表示安裝失敗。如果僅出現警告資訊,但安裝過程還在繼續,這並不是安裝失敗,頂多使軟體部分功能無法使用。

如果在執行 「./configure」 或 」make「 編譯中報錯停止,通常情況下都是因為缺少某些依賴庫,按報錯資訊安裝依賴庫即可。然後在重新執行 「./configure」 之前,要先執行 make clean 命令,它會清空makefile檔案或編譯產生的 ".o" 標頭檔案,清空後再編譯安裝

在安裝原始碼包時,我們指定了安裝路徑為/usr/local目錄下,原始碼包的解除安裝只需要找到軟體的安裝位置,直接刪除其所在目錄即可,不會遺留任何檔案。需要注意的時,在刪除前應先將軟體停止服務。

rm -rf /usr/local/nginx-1.18.0

原始碼包編譯安裝

源 預處理 編譯 彙編 鏈結 執行1 configure 1 通過選項傳遞引數,指定啟用特性 安裝路徑等 執行時會參考使用者的指定及makefile.in檔案聲稱makefile。2 檢查依賴到的外部環境,如依賴的軟體包。2 make 根據makfile檔案,構建應用程式。3 make instal...

原始碼包編譯安裝

主要優點 獲得軟體的最新版,及時修復bug 軟體功能可按需選擇 定製,有更多軟體可供選擇 原始碼包適用各種平台 rpm包 rpm yum 執行安裝 gcc make make install原始碼包 可以執行的程式 執行安裝 步驟1 安裝gcc make root svr7 yum y instal...

linux原始碼包編譯安裝軟體詳解

configure make make install原始碼安裝三部曲,一直在使用卻一直知其然不知其所以然,今天就說說所以然。原始碼到成為可執行程式經歷了一下步驟 原始碼 預處理 編譯 彙編 鏈結 執行 make就做了編譯彙編的工作,當然也也不是隨隨便便就幹活的,要有依據,那他是根據什麼幹活的呢?根...