问题描述
使用cmake,可以将带有CMAKE_CXX_FLAGS
和CMAKE_CXX_LINK_FLAGS
的编译器选项传递给链接器。
但是据我所知,CMAKE_CXX_FLAGS
也被传递给链接器。
是否可以将选项传递给编译器而不传递给链接器?
解决方法
使用 target_compile_options 将编译器选项添加到特定目标
https://cmake.org/cmake/help/latest/command/target_compile_options.html
使用 target_link_options 将链接器选项添加到特定目标
https://cmake.org/cmake/help/latest/command/target_link_options.html
除非您真的知道自己在做什么,否则现代cmake项目应避免使用CMAKE_CXX_FLAGS / CMAKE_CXX_LINK_FLAGS。