Make
makefile:相同的目標和目錄名稱
在我的
make
文件中,我有一個目標test:
並且make test
工作正常。但是當我也有一個名為test的子目錄時,我收到消息:make: 'test' is up to date.
如何強制make
忽略子目錄並執行目標?
將其聲明為phony。這由 GNU make 和 BSD make 支持。
.PHONY: test test: build test/run_them_all
如果你想使用 POSIX 兼容的方法來避免這個問題,你可以使用這個 Makefile:
test: FRC some commands FRC:
這將始終在沒有文件存在
test
的假設下重建。FRC
此方法自 aprox 以來一直在使用。42 歲。
該名稱
FRC
表示Force ReCompile
,但任何其他不存在的文件名也可以這樣做。