在 makefile 中,我在构建目录中构建所有 .o 文件:
program: class1.o class2.o class3.o
g++ $(BUILDDIR)class1.o $(BUILDDIR)class2.o $(BUILDDIR)class3.o -o $@
$(BUILDDIR)class1.o $(BUILDDIR)class2.o $(BUILDDIR)class3.o
从依赖项列表中生成会很酷......
我知道这$^
会给我所有依赖项的列表,用空格分隔,但我无法处理子目录。
是否可以 ?
如果我有,我可以从列表中program: class1.o class2.o class3.o configure
排除吗?configure
谢谢 :)
编辑:迈克尔的解决方案效果很好,但是这样做,make
找不到依赖关系,并且每次都必须构建所有内容......在制定隐含规则时,是否有更简单的方法,program: class1.o class2.o class3.o
告诉它将二进制文件放在构建目录中?