CMake - 使用 find_package 中的变量链接用于调试和发布版本的不同库
CMake - Linking different libraries for Debug and Release builds with variable from find_package
我想 link 仅在调试版本中使用某些库,而不是在发布版本中使用。在 target_link_libraries
中使用 debug
标志,如前所述 here 仅适用于紧跟在标志之后的库。但是,我想将它应用于 find_package
中变量中指定的所有库,如下所示:
find_package(Cairomm)
add_library(Paint Painter.cpp)
target_link_libraries(Paint
debug ${Cairomm_LIBRARIES}
用 ldd
检查生成的二进制文件表明,Cairomm_LIBRARIES
中指定的第一个库确实被省略了,但是以下是 linked.
我能否以某种方式将 debug
标志应用于变量中的所有库?
使用循环:
foreach (_lib ${Cairomm_LIBRARIES})
target_link_libraries(Paint debug ${_lib})
endforeach()
我想 link 仅在调试版本中使用某些库,而不是在发布版本中使用。在 target_link_libraries
中使用 debug
标志,如前所述 here 仅适用于紧跟在标志之后的库。但是,我想将它应用于 find_package
中变量中指定的所有库,如下所示:
find_package(Cairomm)
add_library(Paint Painter.cpp)
target_link_libraries(Paint
debug ${Cairomm_LIBRARIES}
用 ldd
检查生成的二进制文件表明,Cairomm_LIBRARIES
中指定的第一个库确实被省略了,但是以下是 linked.
我能否以某种方式将 debug
标志应用于变量中的所有库?
使用循环:
foreach (_lib ${Cairomm_LIBRARIES})
target_link_libraries(Paint debug ${_lib})
endforeach()