-cmake 中的框架命令行选项
-framework command line option in cmake
我正在尝试编译一些已经(由其他人)使用 Cmake 在 Linux 中编写的 C++ 代码,我在 CMakeLists.txt
中遇到了行 SET(CMAKE_CXX_LINK_FLAGS "-framework OpenGL")
。我从未见过 -framework
作为命令行选项,而且在任何 posts/websites/cmake 文档中似乎也找不到任何提及它的地方。当然,我收到错误 c++: error: OpenGL: No such file or directory
和 c++: error: unrecognized command line option '-framework'
。
有人知道 -framework 的作用吗?当我尝试将 Cmake 用于 build/configure VTK 时,Cmake 在 OpenGL 方面遇到了问题,但我认为我已经解决了这个问题,因为它最终可以正常工作。让 VTK 构建工作而不是这个有意义吗?无法识别的 -framework 选项错误可能是由于缺少 OpenGL 造成的吗?或者它们是分开的?
Apple 接受了-framework
选项clang
;框架是一种在特定目录结构中打包头文件和库的方法。
无条件指定这些选项的 CMake 文件不可移植;一个更好的跨平台解决方案是使用 find_package
命令。您可以阅读有关如何使用 find_package
here.
的更多信息
我正在尝试编译一些已经(由其他人)使用 Cmake 在 Linux 中编写的 C++ 代码,我在 CMakeLists.txt
中遇到了行 SET(CMAKE_CXX_LINK_FLAGS "-framework OpenGL")
。我从未见过 -framework
作为命令行选项,而且在任何 posts/websites/cmake 文档中似乎也找不到任何提及它的地方。当然,我收到错误 c++: error: OpenGL: No such file or directory
和 c++: error: unrecognized command line option '-framework'
。
有人知道 -framework 的作用吗?当我尝试将 Cmake 用于 build/configure VTK 时,Cmake 在 OpenGL 方面遇到了问题,但我认为我已经解决了这个问题,因为它最终可以正常工作。让 VTK 构建工作而不是这个有意义吗?无法识别的 -framework 选项错误可能是由于缺少 OpenGL 造成的吗?或者它们是分开的?
Apple 接受了-framework
选项clang
;框架是一种在特定目录结构中打包头文件和库的方法。
无条件指定这些选项的 CMake 文件不可移植;一个更好的跨平台解决方案是使用 find_package
命令。您可以阅读有关如何使用 find_package
here.