Linux中如何利用make進行原始碼的編譯和安裝

2021-08-22 07:05:26 字數 2046 閱讀 3176

寫這篇文章僅僅來解釋make工具的原始碼編譯功能,不去涉及gcc, 不去涉及為什麼原始碼編譯安裝軟體。

首先,make是乙個編譯程式,但是這僅僅是乙個程式,不能適用於所有的核心,所以在編譯不同的原始碼的時候需要不同的規則來編譯,而這個規則寫在makefile檔案當中,當使用make的時候,make會使用該目錄下的makefile作為引數配置檔案,來進行make的編譯操作,聽起來好像很簡單,那麼來看一下詳細步驟吧

1.首先取得原始檔(在這裡我們以apache的配置為例)

[root@localhost張大帥哥 ~]# ls

.34.tar

我這裡有乙個原始碼包,先把它移動到/usr/local/src/下進行壓縮

[root@localhost張大帥哥 ~]# mv httpd-2.2.34.tar.bz2 /usr/local/src/

[root@localhost張大帥哥 ~]# cd /usr/local/src/

[root@localhost張大帥哥 src]# ls

httpd-2.2.34.tar.bz2

2.解壓這個tarball

[root@localhost張大帥哥 src]# tar -xvf httpd-2.2.34.tar.bz2 

[root@localhost張大帥哥 src]# ls

httpd-2.2.34 httpd-2.2.34.tar.bz2

3.進入新建的目錄下,查閱install和readme相關檔案,一般情況下我們拿到原始碼包之後都會先去查閱這兩個檔案,因為這兩個檔案就相當於說明書,檢視之後安裝相關軟體(也可以在下一步用configure來檢測後提示安裝)

[root@localhost張大帥哥 src]# cd httpd-2.2.34/

[root@localhost張大帥哥 httpd-2.2

5.編譯:使用make,它便會自動檢測此目錄下的makefile檔案,然後按照規則進行編譯

[root@localhost張大帥哥 httpd-2.2.34]# make
6.安裝:make會依據makefile檔案中的安裝選項進行安裝

[root@localhost張大帥哥 httpd-2.2.34]# make install
[root@localhost張大帥哥 profile.d]# vim title.sh

[root@localhost張大帥哥 profile.d]# source title.sh

[root@localhost張大帥哥 bin]# apachectl start

linux中的make命令

make命令的選項和引數 k 它的作用是讓make命令在發現錯誤時仍然繼續執行,而不是在檢測到第乙個錯誤時就停下來。n 它的作用是讓make命令輸出將要執行的操作步驟,而不真正執行這些操作 f 它的作用是告訴make命令將哪個檔案作為makefile檔案。如果未使用這個選項,標準版本的make 命令...

利用python中的zipfile模組進行解壓縮

本文主要說解壓的問題 匯入模組 import zipfile 壓縮包所在路徑 file dir test.zip zf zipfie.zipfile file dir 檢視壓縮包內的檔案 以列表形式呈現 zf.namelist 將解壓的檔案儲存到指定的路徑下 zf.extractall some 匯...

python中利用GDAL對tif檔案進行讀寫

利用gdal庫對tif影像進行讀取 示例 預設波段為 b g r nir的順序,且為四個波段 import gdal defreadtif filename dataset gdal.open filename ifdataset none print filename 檔案無法開啟 return ...