在 makefile 中,以 at 符号为前缀的行 disables the print of the output .我有一个 makefile,其中每一行都以 at 为前缀,但是对于调试,我需要查看发生了什么。有没有办法告诉 make 忽略 at 并输出该行?调试过度,-n 选项打印它们,但不执行任何操作(用于空运行)
最佳答案
创建一个默认值为 @
的变量:
AT := @
然后在您的
Makefile
中使用它:foo:
$(AT)fooc -o $@
然后运行
make
如 make AT=
.如果你喜欢,你可以变得更漂亮:V := 0
AT_0 := @
AT_1 :=
AT = $(AT_$(V))
这将使命令静音,除非
V
设置为 1
(例如, make V=1
)。这使用了非 POSIX 但递归变量扩展的共同特征。
关于makefile - 忽略生成文件中的 (@) 符号,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3861911/