我跟着指示網上建立GCC(實際上G ++)生成.D依賴項文件的時間徹底改造項目,現在我的makefile文件看起來是這樣的:使用GCC相關文件的原因讓每一個
CPPFLAGS := ... -MMD -MP
...
OBJECTS := $(shell find *.cpp *.s | sed -e 's/\.cpp/\.o/' -e 's/\.s/\.o/')
all: setupdir $(OBJECTS) link image
,然後在文件的結尾:
-include $(pathsubst %.d,obj/%.d,$(OBJECTS:.o=.d))
的.d文件是否被正確生成,並且所有在obj的目錄顯示出來。現在的問題是,即使沒有爲它們生成.d文件的程序集文件,每次運行make時都會重建整個源代碼樹。該項目不需要很長時間進行編譯,但是仍然會如何解決這個問題,以便make正確運行?
'make -d'會將make放在「調試模式」中,並告訴你爲什麼它正在做它正在做的事情。這是很多的輸出,所以它很難閱讀,但信息在那裏... – Nemo 2011-06-12 23:59:11
「在線說明」?啊,互聯網......那個衆所周知的,集中的,無重複的,矛盾的,緊密的技術資源! – 2011-06-13 00:44:21
@Tomalak - 謝謝你的高高興興:) – 2011-06-13 00:46:40