linux 下面make工具的使用

2021-05-24 13:39:59 字數 1638 閱讀 5226

在vs下面的工程檔案,光使用gcc命令已經很麻煩了,這時候就要用make命令,就像是乙個工程一樣,在vs下面微軟給我們做好了各種方便的用法,但是在linux下面就要靠我們自己寫了。

使用make就一定要有個makefile,它描述了軟體包中各個檔案之間的關係,提供了更新每個檔案的命令。在乙個軟體包裡,通常可執行檔案由鏈結檔案更新,而鏈結檔案由編譯檔案產生~當乙個makefile檔案搞定了以後執行:make,就完成所有必需的重新編譯。比如上次說過的:

gcc hello.c f2.c -o test

這個命令就是生成乙個叫test的可執行檔案,現在如果使用make命令,那麼首先建立乙個檔案,名字叫做makefile,用touch命令

對這兩個檔案的makefile寫法:

,然後退出在終端執行make指令,就會出現昨天的那張,你們可以自己試試~

對每句做個解釋:第一句,代表了test是目標檔案,其依賴於兩個模組,f2.c and hello.c。

我這裡放一張圖,關於用編譯後的檔案進行make的,有興趣的可以看看

最後生成的都是乙個東西。

make的命令格式:

make [選項] [巨集] [目標]

選項定義了make如何工作;巨集是執行make時使用的巨集值;目標是需要更新的目標名

「在unix下, flags包含:

-f   指定makefile檔名

-i   忽略命令執行返回的出錯資訊,繼續向下執行,如果沒有的話碰到錯誤就停了

-s  沉默模式, 在執行前不輸出相應的命令列資訊

-r  禁止build-in規則

-n 非執行模式, 輸出所有執行命令,但不執行。這個常用來檢查makefile檔案的重要性~

-t  更新目標檔案的日期~

-q  make將根據目標檔案是否更新返回0或非0

-p  輸出所有巨集定義和目標檔案描述在螢幕上

-d  debug模式,輸出有關檔案和檢測時間的詳細資訊

-c dir  在讀取makefile之前改變到指定的目錄dir

-i dir   指定使用的makefile所在的目錄

-h   help文件,顯示所有的make選項

-w  在處理makefile之前和之後, 都顯示工作目錄"

解釋下剛才的那張,在終端輸入make以後,make將對makefile中的第一行目標進行維護,在前面的例子中,按照以上預設規則,就應該將test作為目標來維護。再發現目標依賴於其他檔案時,又繼續在makefile檔案中尋找以新的依賴檔案尾目標的相關檔案,並這樣層層進行搜尋。

make也可以指定要維護的目標,比如

make hello.o;當然,並不是所有的makefile檔案的名字都要叫makefile,你可以自己指定,只要裡面按照makefile的格式來寫就行了,這時需要指定你要make那個東西,比如有個叫makehello的檔案裡面寫著關於hello.c的檔案make方法,這時需要的命令是:

make -f makehello;

make是個很大的東東,今天就寫這麼多,下篇再寫把~~~

linux下面串列埠工具C kermit

gunzip cku211.tar.gz tar xvf cku211.tar rm rf cku211.tar make linux mv wermit usr local bin kermit 執行以上命令,就可以在終端上輸入kermit就可執行了。2.功能簡介 1 支援kermit檔案傳輸協議...

Linux開發工具 gdb和make

gdb主要有以下幾個方面的功能 1 啟動你的程式,可以按照你的自定義的要求隨心所欲的執行程式。2 可讓被除錯的程式在你所指定的調置的斷點處停住。斷點可以是條件表示式 3 當程式被停住時,可以檢查此時你的程式中所發生的事。4 你可以改變你的程式,將乙個bug產生的影響修正從而測試其他bug。進入gdb...

Linux操作 grep egrep工具的使用

命令格式 grep cinvabc word filename,常用選項如下 說明 前面的數字顯示為綠色,表示行號。說明 只要有乙個數字就算匹配到了。說明 只要包含乙個數字,就不顯示。說明 這裡面是包含有空行的。在正規表示式中,表示行的開始,表示行的結尾,表示空行。如何列印出不以英文本母開頭的行?示...