[英]C++ Makefile 3 files
我有一個makefile問題。 我知道如何為兩個但不是四個不同的文件(包括頭文件)創建一個makefile。
有四個文件,main.cpp Dictionary.h Dictionary.cpp和Cinco.h
Cincotest: main.o Cinco.o
g++ -o p3 main.o Cinco.o
main.o: main.cpp Cinco.h
g++ -c main.cpp
Dictionary.o: Dictionary.cpp Dictionary.h
g++ -c .cpp
# clean up
clean:
rm -f p4 *.o *~
我們是否需要其他文件代碼,還是可以在這里獲得幫助?
如果您知道答案,並且可以輸入完美的新代碼;)
在我看來,這是一種相當標准的組織代碼的方式.cpp
和.h
頭文件。
您擁有的規則就足夠了。 除非您的main.cpp
也#include-s Dictionary.h
頭文件,或者您的dictionary.cpp
也#include-s Cinco.h
,在這種情況下:
main.o: main.cpp Cinco.h Dictionary.h
g++ -c main.cpp
Dictionary.o: Dictionary.cpp Cinco.h Dictionary.h
g++ -c .cpp
一個makefile
只是一個依賴列表。 對於每個*.o
文件,其依賴項是編譯該文件所需的所有源文件。 如果在main.cpp
#include Dictionary.h
,那么對Dictionary.h
的更改意味着當然需要重新編譯main.cpp
。 因此,您的依賴項規則將指示相同的方式。
由於您使用的是g++
,因此您也可以使用g++
為您編寫依賴關系規則。 嘗試:
g++ -MM -MF main.deps main.cpp
有關更多信息,請參見gcc
的手冊頁。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.