我正在编写一个使用Boost的C++程序,并使用XCode 4.1作为IDE和编译器前端。我在各种Boost头文件中收到了很多警告,并且我想禁用这些头文件的所有警告(但仍然为我自己的项目启用它们)。有没有简单的方法来做到这一点?在XCode 4.1中禁用有关Boost标题的警告
2
A
回答
3
我已经找到一个体面的解决办法,依据是什么@Georg Fritzsche也建议: 我已经添加了各种牵连boost头文件的.PCH文件(预编译头),并缠他们一个#pragma push
- #pragma pop
块,像这样:
// We do not want to have warnings about Boost headers!
#pragma GCC diagnostic push
#pragma GCC diagnostic ignored "-Wconversion"
#pragma GCC diagnostic ignored "-Wshadow"
#include <boost/date_time/posix_time/posix_time_types.hpp>
...
#pragma GCC diagnostic pop
这完美的作品,它不是为具有#pragma
包围升压头在每个.cpp文件,因为我担心恼人。
+1
我已经将.pch文件添加到我的项目中,并且还启用了预编译头文件,但我的警告消失了。我有同样的问题,你有。我需要做其他事吗?我已经包含了头文件,它在.pch文件中给出了警告,但没有运气。 – Kobe
0
另一种解决方案是,我发现它可以在Xcode 5.x中工作(但它有望与Xcode 4一起使用)。 在生成设置了升压的取决于代替Header Search Paths
下设定这些标头的路径中目标,我把它写Other C++ Flags
下,通过-isystem
相关问题
- 1. 在xcode中禁用和启用警告
- 2. 如何在Xcode 4.2中禁用CoreData的反向关系警告?
- 3. 从框架禁用Xcode中的警告
- 4. 如何禁用在XCode中标记为错误的警告
- 5. Xcode中 - 警告问题
- 6. 如何在Sun Studio 12中禁用系统标题的警告
- 7. 在VIM中禁用警告?
- 8. 在Xcode中禁用特定行中的特定警告
- 9. 禁用所有gcc警告
- 10. 禁用所有scons警告
- 11. 如何禁止或忽略Xcode中的所有警告?
- 12. Xcode 4.1问题
- 13. boost microsec_time_clock.hpp警告C4244
- 14. 禁用警告2008
- 15. IntelliJ禁用警告
- 16. xcode7禁用弃用警告
- 17. 禁用IntelliJ警告
- 18. 禁用PHP警告
- 19. 锵(在Xcode):开始-Weverything和手动禁用特定的警告
- 20. 当在Boost周围使用“#pragma警告”时,警告C4503包括
- 21. 有没有办法禁用xml警告?
- 22. xCode中的奇怪警告
- 23. Xcode中的“Dead Store”警告
- 24. UIActivityViewController xcode警告
- 25. NSTimer Xcode警告
- 26. 来自boost的警告
- 27. 禁用Encode.pm的警告
- 28. MSVC - 在标题中停止警告
- 29. 警告Android 4.1.x版本使用者
- 30. 如何在lisp(sbcl)中禁用警告
不是一般前缀为特定标头集合及实例从他们。但是对于翻译团队中的部分,请参阅[这里](http://stackoverflow.com/questions/965093/selectively-disable-gcc-warnings-for-only-part-of-a-translation-unit)。 –
@Georg:我已经读过这个问题,但是1.我没有使用GCC; 2.我不想在每个.cpp文件中写入多个'#pragma',只要包含一个Boost头文件。如果可能的话,我想要一个更通用的解决方案。 –
然后你用什么编译器? –