Linux下makefile的簡單使用

2021-10-05 01:20:06 字數 1336 閱讀 8719

make命令允許你管理大型程式或一組程式(groups of programs)。當你開始編寫大型程式時,你會發現重編譯(re-compiling)大型程式比小型程式花費更多的時間。另外也會注意到,你經常僅僅在一小部分程式上工作(例如你正在除錯的乙個函式),剩餘的大部分程式保持不變。

make程式幫助你開發大型程式。它跟蹤自上次編譯之後,整個程式中發生變化的部分,並僅僅編譯這些程式。

makefile其實就是乙個文件,裡面定義了一系列的規則指定哪些檔案需要先編譯,哪些檔案需要後編譯,哪些檔案需要重新編譯,它記錄了原始碼如何編譯的詳細資訊! makefile一旦寫好,只需要乙個make命令,整個工程完全自動編譯,極大的提高了軟體開發的效率。

目標:依賴檔案

$^ 代表所有依賴檔案

$< 代表第乙個依賴檔案

% 代表萬用字元

@指令:遮蔽指令

定義變數(變數大寫)

變數名=值1 值2 …

使用變數 $(變數名)

示例

當我們有多個檔案,最後想得到乙個main檔案時,

從上面可以看出我需要編譯很多個檔案,這樣的話命令十分的長,我每次修改**後都需要重新編譯執行,就很複雜麻煩。所以需要makefile來幫助我們實現。下面是makefile的簡單使用:

1,使用vim makefile建立

2,進行編輯

23 cc=gcc

45 all:

6 $ tlv.

*-lsqlite3

78 clean:

1011

3.我們就可以看到目錄下,已經建立好了可執行檔案tlv—server

4.如果需要刪除:

1、make會在當前目錄下找名字叫」makefile」或」makefile」的檔案。

2、如果找到,它會找檔案中的第乙個目標檔案(target)並把這個檔案作為最終的目標檔案

3、根據時間戳生成目標檔案

4、遞迴去尋找目標檔案依賴檔案,並且遞迴生成(同樣有時間戳問題)。

makefile 管理命令

-c dir 讀入指定目錄下面的makefile

-f file 讀入當前目錄下的file檔案為makefile

-i 忽略所有命令執行錯誤

-i dir 指定被包含的makefile所在目錄

總結:makefile的使用極大的提公升了我們編譯的效率,當然還有其他很多的用處,編寫方法,本人學習到的有限,可以檢視makefile詳細的介紹學習

linux下的makefile程式設計

程式1 mytool1.c include mytool1.h include stdio.h void mytool1 print char print str 程式2 mytool1.h ifndef mytool 1 h define mytool 1 h void mytool1 print...

Linux下的MakeFile檔案

makefile是linux下的檔案管理工具,本質是檔案,載入執行需要make命令,make命令可以認為是執行shell指令碼檔案 我們建立乙個makefile檔案,注意,在linux中,m首字母大小寫不區分 呼叫vim makefile makefile內容是main的gcc的過程,要分步驟寫,和...

linux 下makefile的使用舉例

該程式在linux平台下用c語言實現 有兩個標頭檔案m1.h m2.h 對應的實現檔案m1.c m2.c 除錯檔案test.c 案例 如下 m1.h includevoid m1 print char str m2.h includevoid m2 print char str m1.c inclu...