f1: f1.cpp f.h
g++ -c -Wall -g f1.cpp
f2: f2.cpp f.h
g++ -c -Wall -g f.cpp
此文件也不編譯f2.cpp
到f2.o
只編譯第一個文件,任何想法,爲什麼?Makefile文件編制只有第一個文件一個生成文件說明
f1: f1.cpp f.h
g++ -c -Wall -g f1.cpp
f2: f2.cpp f.h
g++ -c -Wall -g f.cpp
此文件也不編譯f2.cpp
到f2.o
只編譯第一個文件,任何想法,爲什麼?Makefile文件編制只有第一個文件一個生成文件說明
因爲只製作processes the first target (goal)。要做到這一點,作爲第一條規則:
all: f1 f2
這是你的Makefile的全部內容?如果是,那麼你錯過了all
規則。
all: f1 f2
f1: dependencies
intructions
f2: dependencies
intructions
謝謝。它的工作原理:-) –
我還有一個問題,依賴關係不起作用 –
什麼不正確?你期望什麼?另一個規則的依賴關係應該自動工作。依賴文件需要你在規則說明中引用它們,比如'g ++ -c -Wall -g f.cpp $ <'。 '$ <'標識符表示相應規則的_all依賴關係。 – jweyrich
你需要一個目標(比如說)'all',它具有'f1'和'f2'作爲依賴關係。並把這個目標('all')放在頂部。 –