有没有办法可以抑制GNU make
的编译器警告,只显示更高阶的日志,即errors?
显然,如here所述,应该可以使用make -w
。但是,对于我的GNU make(4.1)版本,man文件将其指定为打印当前目录:
-w, - print-directory打印当前目录 -W文件 认为FILE是无限新的。
如果可能的话,应该禁用内部警告($(warning ...)
)和gcc
编译器级警告。
答案 0 :(得分:0)
正如this post所指出的那样,不可能直接为编译器添加标志。此外,添加到现有的CFLAGS
变量(make CFLAGS+=-w
)在大多数情况下都不起作用,因为它忽略了追加部分,只是在命令行中重新定义变量。
解决这个问题的一个非常简单的解决方案是在makefile中创建一个空虚拟变量(一次),然后在需要时定义它:
# Add empty variable to add flags over command line
CDBG +=
CFLAGS += $(CDBG)
然后您只需使用如下:
make CDBG=-w