GNU的make工作時的執行步驟
(1)讀入所有的Makefile
(2)讀入被include的其它Makefile
(3)初始化檔案中的變數
(4)推導隱晦規則,並分析所有的規則
(5)為所有的目標檔案建立依賴關係鏈
(6)根據依賴關係,決定哪些目標重新生成
(7)執行生存命令
定義在Makefile中的目標可能會有很多,但是第一條規則中的目標將被確立為最終的目標。如果第一條規則中的目標有很多個,那麼,第一個目標會成為最終的目標。
為了避免和檔案重名的情況,可以使用一個特殊的標記".PHONY"來顯示地指明一個目標是“偽目標”,向make說明,不管是否有這個檔案,這個目標就是“偽目標”。
如果make執行時,帶入make引數“-n” 或“--just-print”。那麼其只是顯示命令,但不會執行命令,這個功能有利於除錯Makefile。而make引數“-s”或者“--slient”則是全面禁止命令的顯示