如果我在任何大型开源项目(例如Ruby)上运行./configure && make
,它将在控制台中显示数千个编译器警告。是否可以在警告被抑制的情况下运行它(并显示错误,如果有的话)?
答案 0 :(得分:4)
将CFLAGS=-w CPPFLAGS=-w CXXFLAGS=-w LDFLAGS=-w
添加到您的配置行。
数字!
$ tar -xzf ruby-1.9.3-p125.tar.gz
$ cd ruby-1.9.3-p125
$ { ./configure && make; } 2>&1 | wc -l
1197
$ cd ..
$ rm ruby-1.9.3-p125
$ tar -xzf ruby-1.9.3-p125.tar.gz
$ cd ruby-1.9.3-p125
$ { CFLAGS=-w CPPFLAGS=-w CXXFLAGS=-w LDFLAGS=-w ./configure && make;} 2>&1 |wc -l
989
$
你有它。
香草configure && make
: 1197行
关闭警告: 989行
节省: 17%
关闭警告绝不会禁止显示错误,因此您仍然可以知道什么时候不起作用。
禁用警告:减少17%的线路。反复构建Ruby只是为了计算输出线:无价值。
答案 1 :(得分:1)
你可以使用grep。使用make | grep -B 5 Error
。
这将显示包含短语'错误'之前有5行;)我强烈建议在分析之前将其放在日志文件中,这样做./configure && make > logfile
答案 2 :(得分:1)
将所有警告转换为错误。
-Werror
将最大错误设置为零。
-fmax-errors=0
更多... http://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html