我正在编写一个Makefile来编译一个非常长的项目。 基本上,我已经定义了所有我需要的对象。 问题出现在我需要生成依赖关系时。 我正在做类似这样的事情:
a.o: $( $(CXX) -MM $(INCLUDE) A/a.cpp | sed 's/a.o: //')
$(CXX) $(CXXFLAGS) $(INCLUDES) A/a.cpp
b.o: $( $(CXX) -MM $(INCLUDE) A/b.cpp | sed 's/b.o: //')
$(CXX) $(CXXFLAGS) $(INCLUDES) A/b.cpp
libab.a: a.o b.o
$(LXX) $(LXXFLAGS) libab.a a.o b.o
$(CXX) -MM $(INCLUDE) A/a.cpp | sed 's/a.o: //'
的输出列出了a.cpp需要编译的所有依赖项,因此我试图将此命令的输出用作声明对象时的依赖项,但它不起作用。您有什么想法吗?
谢谢。