2009-02-12 76 views
2

我是新來的make和makefiles,所以請原諒我,如果這是非常基本的。make文件中的「.target-name」目標是否會始終運行?

我正在瀏覽項目中的一些生成文件,我看到2種類型的目標 - 不以a開頭的目標。性格和目標。

從我的猜測看來,「.target-name」目標總是被執行,我的假設是否正確?我通過谷歌搜索瞭解makefile,但沒有發現任何特定的東西。

和往常一樣,感謝您的答案!

回答

3

以一個點的目標位分別是常特殊意義的目標(即其functioniality被內置到生產)。其中之一是 .PHONY,這是定義總是執行的目標的那個(也就是說,它們的規則中的命令無條件地運行)。

但也有其他的,例如.DEFAULT作爲默認規則,或者.PRECIOUS與中斷時不會刪除隱式構建的目標。

+0

謝謝!但非常奇怪的是,我在文檔中看到除這些以外的其他名稱:http://www.gnu.org/software/autoconf/manual/make/Special-Targets.html#Special-Targets – Srikanth 2009-02-12 10:17:14

+0

我的意思是,我看到「 .some-random-name-not-in-documentation「目標在我的項目中。所以從他們所稱的地方流浪。當我弄清楚時我會發布它。 – Srikanth 2009-02-12 10:20:38

2

對於學習make,特別是gmake,我建議看一下優秀的書「使用GNU Make管理項目」(sanitised Amazon link)。

HTH。

歡呼聲,

相關問題