Werror忽略某些文件
答
我唯一的想法是编译文件,您可以单独修改文件-Werror
,然后将它们与其他对象/库文件链接,而不需要-Werror
。
+0
如果他们是只有头文件: - / – 2010-07-27 00:14:01
答
@Sam米勒已经给了有关如何做到这一点的参考文档...
您可以暂时在某些警告禁用-Werror
与#pragma GCC diagnostics warning "-W<kind>"
。例如:
#pragma GCC diagnostic push
# pragma GCC diagnostic warning "-Wreturn-type"
# pragma GCC diagnostic warning "-Wmissing-braces"
# include "legacy-crap.h"
#pragma GCC diagnostic pop
较新的gcc
将打印在括号中的诊断类别的名称为警告/错误的一部分:
warning-test.c:11:1: warning: return type defaults to ‘int’ [-Wreturn-type]
或
warning-test.c:11:1: error: return type defaults to ‘int’ [-Wreturn-type]
这可以用于要准确地选择确切的诊断,应该被视为警告而不是错误,在处理第三方垃圾时,你没有权力改变。我不知道一个简短的手来禁用所有的警告("-Wall"
将不会有上述#pragma
期望的效果),但我认为这也是很好的明确在这里。
如果你没有源代码...那么你应该已经有一个库链接到。或者你的意思是头文件? – Akusete 2010-07-26 23:43:08
Err ...如果你没有源代码,那么GCC不会抱怨! – 2010-07-27 00:15:49
似乎是重复http://stackoverflow.com/questions/3308523/how-to-eliminate-external-lib-third-party-warnings-in-gcc – Dummy00001 2010-07-27 15:36:33