【发布时间】:2017-08-01 09:30:50
【问题描述】:
我在我的项目中使用 GLAD,并使用 cmake 构建所有内容。
由于这是一个外部库而不是我的代码,我想在构建时完全禁止它的警告,因为我得到了很多这样的警告:
warning: ISO C forbids conversion of object pointer to function pointer type [-Wpedantic]
glad_glCullFace = ( PFNGLCULLFACEPROC ) load ( "glCullFace" );
^
我该怎么做? 我可以将它包含在我的源代码中,或者使用 GLAD 的源代码做一个 add_library,不管哪种方式。
谢谢
【问题讨论】:
-
如果您将库构建为单独的库,请调整编译器标志(变量
CMAKE_C_FLAGS)。如果您使用自己的库构建库的源,请调整属性COMPILE_FLAGS 以获取库的源。这两种方法都很容易用谷歌搜索。 -
How to suppress GCC warnings from library headers? 的可能重复项,尤其是答案 stackoverflow.com/a/26297802/2799037,它解释了将 SYSTEM 添加到 include_libraries
-
@usr1234567:警告实际上在source file中,而不是在标题中。
-
@Tsyvarev:我明白了,谢谢你的提示。可能这不是 CMake 问题。一旦回答了 C 的问题,它就会按照您的评论中的说明轻松应用于 CMake。
-
@usr1234567 。不是重复的。我知道 include_directory 的 SYSTEM 选项(不是 include_libraries )。这不是关于使用这些标头构建主项目,而是关于构建该库本身。
标签: cmake warnings suppress-warnings