2011-04-21 60 views
1

我是makefiles的新手,我有點卡住了。我有兩個名爲trade.c和report.c的c源文件。它們都依賴於一個名爲acc.h的文件。 acc.h文件由兩個其他頭文件users.h和resellers.h組成。我想知道如何將兩個頭文件的依賴關係寫入acc.h文件。我到目前爲止...基本的Makefile和頭文件依賴關係

OBJECTS = trade.c report.c 
CC = gcc 

trading: $(OBJECTS) 
     $(CC) $(OBJECTS) -o trading 

trade.o: trade.c accts.h 
     $(CC) -c trade.c 

report.o: report.c accts.h 
     $(CC) -c report.c 

任何幫助,非常感謝。

回答

1

除了在對象文件的依賴關係列表中添加所有頭文件,沒有別的選擇,如下所示。

trade.o: trade.c accts.h users.h resellers.h 
     $(CC) -c trade.c 
0

在所有的專業設置,我已經看到了的makefile,依賴並沒有手動添加 - 除外涉及像lexyacc工具特殊情況 - 但自動創建,或者使用編譯器選項(如-MM),或者使用各種獨立的工具,如makedependmkdep

+0

當然,但這不是在專業設置中設置makefile的人;這是有人學習如何使用make。在開始使用自動工具之前,請先了解如何手動執行此操作,以便您更好地瞭解它們爲什麼以及如何工作並可能會失敗。 – eriktous 2011-04-21 09:52:45