5
我試圖創建一個make文件,它將編譯obj
目錄中的test
目錄中的所有.cpp
文件到.o
文件。以下是我正在做的一個刪節版本。問題是編譯爲.o
文件的調用名稱有合適的.o
,但它們都編譯相同的.cpp
文件。Make file:將所有.cpp文件編譯爲.o文件
gcc -c -o obj/foo.o test/foo.c
gcc -c -o obj/bar.o test/foo.c
gcc -c -o obj/baz.o test/foo.c
什麼我需要改變,使其編制相應的.cpp
文件?
CPP_FILES := $(wildcard test/*.cpp)
OBJ_FILES = $(patsubst test/%.cpp,obj/%.o,$(CPP_FILES))
obj/%.o: $(CPP_FILES)
$(CXX) $(CPPFLAGS) $(CXXFLAGS) -c -o [email protected] $<
executable : $(OBJ_FILES) foo.a
$(CXX) $(CPPFLAGS) $(CXXFLAGS) -lpthread $^ -o [email protected]
謝謝。
謝謝。這工作完美。 – Tom 2010-08-15 20:44:30