在命令行中使用GNU make构建时禁止警告

时间:2018-06-18 20:25:03

标签: gnu-make gnu gcc-warning

有没有办法可以抑制GNU make的编译器警告,只显示更高阶的日志,即errors

显然,如here所述,应该可以使用make -w。但是,对于我的GNU make(4.1)版本,man文件将其指定为打印当前目录:

  

-w, - print-directory打印当前目录    -W文件   认为FILE是无限新的。

如果可能的话,应该禁用内部警告($(warning ...))和gcc编译器级警告。

1 个答案:

答案 0 :(得分:0)

正如this post所指出的那样,不可能直接为编译器添加标志。此外,添加到现有的CFLAGS变量(make CFLAGS+=-w)在大多数情况下都不起作用,因为它忽略了追加部分,只是在命令行中重新定义变量。

解决这个问题的一个非常简单的解决方案是在makefile中创建一个空虚拟变量(一次),然后在需要时定义它:

# Add empty variable to add flags over command line
CDBG +=
CFLAGS += $(CDBG)

然后您只需使用如下:

make CDBG=-w