当没有* .cpp文件时,Makefile .c.o

时间:2013-02-13 07:48:34

标签: c++ c templates makefile

所以基本上。我的makefile有这个规则:

  

.c.o:
  $(CC)$(CFLAGS)$(TESTFUNINCLUDE)-c $< -o $ @

非常好用,直到我在新的hpp文件中添加一些新的模板函数...我把所有内容放在我的hpp文件中,而我的cpp完全是空的。但是,如果我删除了我的cpp文件,gnu make会说。

  

make: * 没有规则来制作目标`myfile_template.o',需要   'blahblahblah'

我可以通过在文件夹中保留一个空的myfile_template.cpp文件来解决这个问题。但我觉得这是一个丑陋的解决方案。有更好的想法吗?。

1 个答案:

答案 0 :(得分:1)

您编写原始Makefile似乎不太舒服,因此我建议您切换到更高级的构建工具,例如CMakeSCons。其他受欢迎的候选人包括tupWafGypPremake