在GCC中,如何(暂时)抑制来自" #pragma message"的消息。

时间:2015-08-18 11:51:09

标签: c++ gcc build compilation pragma

我从GLM库中获取了#pragma message发出的许多消息。有没有办法压制这些,最好暂时(只为那个库)?

1 个答案:

答案 0 :(得分:1)

我能想出的最佳解决方案是将g++的输出通过过滤器输出,即

g++ [args...] 2>&1 | filter_command

(其缺点是丢失g++的退出代码)或

g++ [args...] 2> >(filter_command)

(仅当你的shell是bash时才有效,不仅仅是普通的POSIX sh,但它确实带有退出代码)。 filter_command可以是例如是一个sed脚本,用于删除匹配note: #pragma message:的行与包含空格和单独^的行之间的任何内容:

g++ [args...] 2> >(sed '/ note: #pragma message: /,/^ *\^/d')

我不确定这会捕获所有形式的#pragma message输出。