如何禁用有关某些库的编译器警告?
How can I disable compiler warnings regarding certain library?
我正在使用 CLion 作为我的 IDE。我从 here 下载了 MinGW(带有 boost),解压、安装并成功连接到 CLion。然后我在 CMakeLists
中设置我的编译器标志,当我编译我的程序时,我遇到了来自 boost 库的数百条警告(在本例中 - boost/lexical_cast.hpp
)。
我真的很想使用大部分(如果不是全部的话)这些编译器标志,但我也不希望 boost(肯定比我自己的任何程序都写得更好)产生那么多噪音。
是否有任何方法可以禁用来自特定 header / 库(甚至 namespace
)的所有警告?
您可以将包含路径添加为 SYSTEM
而不是标准路径:
target_include_directories(target SYSTEM ${Boost_INCLUDE_DIR})
这仅适用于 GCC 和 clang,因为 Visual Studio 没有针对系统路径的特定包含标志。
我正在使用 CLion 作为我的 IDE。我从 here 下载了 MinGW(带有 boost),解压、安装并成功连接到 CLion。然后我在 CMakeLists
中设置我的编译器标志,当我编译我的程序时,我遇到了来自 boost 库的数百条警告(在本例中 - boost/lexical_cast.hpp
)。
我真的很想使用大部分(如果不是全部的话)这些编译器标志,但我也不希望 boost(肯定比我自己的任何程序都写得更好)产生那么多噪音。
是否有任何方法可以禁用来自特定 header / 库(甚至 namespace
)的所有警告?
您可以将包含路径添加为 SYSTEM
而不是标准路径:
target_include_directories(target SYSTEM ${Boost_INCLUDE_DIR})
这仅适用于 GCC 和 clang,因为 Visual Studio 没有针对系统路径的特定包含标志。