1.一次讀取變數「makefiles」定義的makefile檔案列表
2.讀取工作目錄下的makefile檔案(根據命令的查詢順序「gnumakefile「, 」makefile「, 」makefile「,首先找到哪個就讀取哪個)
3.一次讀取工作目錄makefile檔案中使用指示符「include「包含的檔案
4.查詢重建所有已讀取的makefile檔案的規則(如果存在乙個目標是當前讀取的某乙個makefile檔案,則執行此規則重建此makefile檔案,完成以後從第一步開始重新執行)
5.初始化變數值並展開那些需要立即展開的變數和函式並根據預設條件確定執行分支
6.根據「終極目標「以及其他目標的依賴關係建立依賴關係鍊錶
7.執行除「終極目標「以外的所有的目標的規則(規則中如果依賴檔案中任乙個檔案的時間戳比目標檔案新,則使用規則所定義的命令重建目標檔案)
8.執行「終極目標「所在的規則
Makefile執行過程例解
1.一次讀取變數 makefiles 定義的makefile檔案列表 2.讀取工作目錄下的makefile檔案 根據命令的查詢順序 gnumakefile makefile makefile 首先找到哪個就讀取哪個 3.一次讀取工作目錄makefile檔案中使用指示符 include 包含的檔案 4...
makefile定義作用及其執行過程
1 定義 makefile是乙個指令碼檔案,解決了批處理 自動編譯 的問題,即用一條指令替代多條指令執行的效果,幫助make來編譯工程 在 linux unix 環境下使用gnu 的make工具能夠比較容易的構建乙個屬於你自己的工程,整個工程的編譯只需要乙個命令就可以完成編譯 連線以至於最後的執行。...
編譯過程和makefile
預編譯 g e test.c o test.i 則做了以下處理 刪除所有 define,並展開所有巨集定義 處理所有條件預編譯指令,如 ifdef等 處理 include 預編譯指令,把 include 標頭檔案中的函式都宣告都扔進來 去掉所有的注釋 新增行號,編譯gdb除錯 保留 pragma 編...