1、 文檔目標
在現代軟件開發(fā)中,隨著項目復雜度的增加,多源代碼文件的管理和構建成為一項不可或缺的任務。Makefile作為一種經典的構建工具,以其簡潔性和靈活性廣泛應用于C/C++等語言的項目管理中。然而,編寫一個高效且可維護的Makefile并非易事,尤其是在面對多源代碼文件、多目錄結構以及依賴關系復雜的場景時。本文將深入探討如何編寫適用于多源代碼文件的Makefile,并結合實際案例分析其設計原則與實現細節(jié)。
2、 問題場景
多源代碼文件的工程,是常見的工程,了解多文件Makefile文件的編寫是很必要的。
3、軟硬件環(huán)境
1)、軟件版本:gcc
2)、電腦環(huán)境:Ubuntu 20.04
3)、外設硬件:無
4、解決方法
1)、在Linux系統(tǒng)的工作目錄下創(chuàng)建一個目錄:math, 再在該目錄創(chuàng)建兩個子目錄:add和include. 如圖4-1所示:

圖4-1
2)、在Add目錄下創(chuàng)建add.c文件,文件的內容如圖4-2所示:

圖4-2
3)、在include目錄下創(chuàng)建add.h文件,文件的內容如圖4-3所示:

圖4-3
4)、在math目錄下創(chuàng)建main.c文件,文件的內容如圖4-4所示:

圖4-4
5)、在math目錄下創(chuàng)建Makefile文件,文件的內容如圖4-4所示:

圖4-5
注:
$@ 表示規(guī)則的目標文件。
$^ 表示規(guī)則的所有依賴文件。
6)、編譯工程,并運行工程,如圖4-6所示:

圖4-6