【问题标题】:Make rebuilds files included with -include [duplicate]使-include包含的重建文件[重复]
【发布时间】:2014-02-06 04:48:30
【问题描述】:

我有一个非常复杂的 makefile,出于显而易见的原因,我不会在此处包含它。我有规则来构建依赖文件,然后将它们包含在“-include myobj.d”行中。

我也(显然)有一个构建 *.d 文件的规则。

然后我有类似的规则

.PHONY: clean
clean:
      rm myobj.d myobj.o ...

当我 make clean 时,首先它会重建所有 .d 文件,然后再删除它们。我用 -d 运行 make 并检查了调试信息,它正在尝试重建我用“-include”包含的所有文件,然后再检查它被告知要构建的目标。我有一大堆“rules.mk”用于构建不同的代码单元,它也试图重建所有这些。

这不是问题,只是包含的 .d 文件实际上确实有构建它们的规则。当我说“make clean”时,我只想执行 clean 规则,而不是重建所有愚蠢的依赖文件,这样我就可以删除它们......

如果构建处于奇怪的状态,其中一半代码已构建而其余代码未构建,并且我正在尝试执行 make clean 以恢复到良好状态,这尤其成问题。

我如何告诉 make 不要尝试自动重建包含的文件?

【问题讨论】:

    标签: makefile


    【解决方案1】:

    现在您不需要为.d 文件制定规则,这是一个常见的误解。详情请见Automatic header dependencies with gmake

    【讨论】:

      猜你喜欢
      • 2012-01-14
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-10-05
      • 2013-12-23
      • 2012-10-22
      相关资源
      最近更新 更多