2008-09-25 172 views
40

在开发C++应用程序时,我不得不使用第三方库,它产生了大量与正在使用的无害#pragma指令相关的警告。如何禁用#pragma警告?

../File.hpp:1: warning: ignoring #pragma ident 
In file included from ../File2.hpp:47, 
       from ../File3.hpp:57, 
       from File4.h:49, 

当使用GNU C++编译器时,是否可以禁用这种警告?

回答

18

也许看到GCC Diagnostic Pragmas?或者在这种情况下,您可以使用-Wall启用的combination of options,但不包括-Wunknown-pragmas

+0

我是母语为英语的人,并且GCC Diagnostic Pragma页面完全无法理解。 – 2017-06-28 08:10:52

90

我相信你可以用

-Wno-unknown-pragmas 

编译抑制这些。

+4

谢谢!这应该被接受!这是唯一一个(在这里)与GCC C++编译器一起工作的人。 – Bitterblue 2013-11-22 08:53:20

23

在GCC,编译-Wno未知的编译指示

在MS Visual Studio 2005中(这个问题不标记用gcc,所以我加入这个仅供参考),你可以在全球范围内禁止项目设置 - > C/C++ - >高级。在“禁用特定的警告”

输入4068或您可以添加这对任何文件来禁用警告当地

#pragma warning (disable : 4068) /* disable unknown pragma warnings */ 
6

谢谢你们每一个人的小费。就我而言,我与Qt Mingw一起工作。我需要以另一种方式设置标志,在我的.PRO文件中:

QMAKE_CXXFLAGS_WARN_ON += -Wno-unknown-pragmas 
+2

如果您正在编译C代码而不是C++,请使用QMAKE_CFLAGS_WARN_ON + = -Wno-unknown-pragmas – redteam316 2013-07-07 08:11:08