从链接中排除目标文件

时间:2013-12-09 20:23:26

标签: c++ linker makefile

我需要将Linux上的可执行文件与除了其中一个文件之外的某个文件夹中的所有目标文件相关联。我在makefile中看到我可以使用通配符来指定与所有obj文件的链接,而无需指定完整的文件列表 - http://www.chemie.fu-berlin.de/chemnet/use/info/make/make_4.html#SEC21

除此之外,我正在寻找一种从链接中排除特定目标文件的方法。 有没有办法实现这个目标?

我正在努力避免在makefile中维护许多目标文件的列表。我特别需要链接目标文件并将它们链接到库中不是一种选择。

提前谢谢。

1 个答案:

答案 0 :(得分:0)

  

我在makefile中看到我可以使用通配符来指定与所有obj文件的链接,而无需指定完整的文件列表

是的:GNU make允许您这样做。通常这是一个非常糟糕的主意:你的可执行文件将在一天内构建完好,并且在下一个版本中会失败,因为有一些“流浪”对象存放在那里。

  

我正在寻找一种从链接中排除特定目标文件的方法

GNU make还具有filter-out功能,可以让您完全按照自己的意愿行事。文档here