makefile - 所有 .cpp 文件都依赖于两个 .h 文件?

标签 makefile nmake

在 makefile 中,我有以下行:

helper.cpp: dtds.h

这确保每当 dtds.h 更改时都会重建 helper.cpp。但是,如果其他两个头文件中的任何一个发生更改,我希望重建项目中的所有文件,如下所示:

*.cpp: h1.h h2.h

显然这是行不通的,但我不知道让 nmake 做我想做的事情的正确方法。有人可以帮忙吗?我不想手动指定每个单独的文件依赖于 h1.h 和 h2.h。

谢谢。 (我使用的是 Visual Studio 2005 中包含的 nmake。)

最佳答案

谢谢你的帮助,克里斯托夫。我尝试过:

.cpp.obj: h1.h h2.h

并收到有用的错误消息:

makefile(58) : fatal error U1086: inference rule cannot have dependents

我最终通过列出我想要编译的文件列表,然后将依赖项添加到整个列表来解决这个问题。

files = file1.obj file2.obj file3.obj
$(files): h1.h h2.h

关于makefile - 所有 .cpp 文件都依赖于两个 .h 文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/418740/

相关文章:

linux - "Unterminated quoted string"在 makefile 中使用带引号的变量

bash - Makefile 不提示编译器使用优化标志

android - android中.mk文件的用途是什么

c++ - NMake 模式规则

nmake - 如何清理nmake生成的obj和lib文件

batch-file - Windows 批处理 (cmd.exe) 命令行参数和字符串操作

echo - nmake - 如何强制 echo 命令输出制表符?

C++,无法从so库访问包含的头文件

makefile - Makefile配方语法错误中的负球

c++ - 由于奇怪的 "compiler generated file could not be created"错误,QT5.6.2 构建无法正常工作