我如何从 gcc 和 g++ 中获取错误和警告的计数?

How do I get a count of errors and warnings from gcc and g++?

我浏览了 $ man gcc$ man g++,但没有找到可以打印错误和警告计数的内容。但我看到 Emacs 可以在 *compilation* 缓冲区中打印错误计数 警告计数。所以,gccg++ 中一定有一个我遗漏的选项,因为我不认为 Emacs 本身会实现错误计数,这太麻烦了。

How do I get a count of errors and warnings from gcc and g++?

统计gcc中的错误意义不大,因为通常一次运行一个文件,一个项目通常有很多文件,所以有很多调用gcc 来构建一个项目。不同文件中可能存在许多错误,因此无论 运行s gcc(例如 make,或者 Emacs 运行s make)应该跟踪错误。事实上,当您 运行 M-x compile 时,Emacs 就是计算错误的工具。打开 compile.el (M-x find-library RET compile RET) 并查看变量 compilation-num-errors-found,这是添加到模式行的内容(以及类似的警告和信息计数)。这些变量如何更新并不是非常简单,但最终它只是在编译器输出上匹配正则表达式。