我有一个生成很多目标文件的Makefile -- .o -。如何将它们重定向到一个目录,然后从该目录创建一个可执行文件?
Makefile format :
x.o = x.hpp x.cpp
g++ -c x.cpp发布于 2012-10-24 16:37:27
好吧,这似乎很简单:
app: bin/x.o
g++ bin/x.o -obin/x
bin/x.o: x.cpp
g++ -c x.cpp -obin/x.o您需要创建bin目录,但也可以轻松地将其添加到Makefile中。希望这能有所帮助。
发布于 2012-10-24 16:37:04
检查g++的-o选项,当只创建目标文件时,它也应该起作用,例如:
g++ -c x.cpp -o objdir/x.o发布于 2012-10-24 16:37:28
如下所示使用规则:
%.o: %.cpp $(HPP_FILES) Makefile
$(CC) $(CC_FLAGS) -c -o directory/$@ $<然后使用如下命令链接所有文件:
my_binary: $(OBJ_FILES)
$(CC) $(LD_FLAGS) -o $@ directory/$(OBJ_FILES)你可以使用简单的赋值来定义OBJ_FILES,HPP_FILES,比如: HPP_FILES,:=,x.hpp,y.hpp等。
https://stackoverflow.com/questions/13045457
复制相似问题