【问题标题】:CMake set per configuration linker flagCMake 为每个配置链接器标志设置
【发布时间】:2021-11-02 16:31:39
【问题描述】:

正如标题所述,是否有一种“简洁”的方式来设置每个配置链接器标志?我无法使用target_link_options(),因为我正在尝试链接到静态库。理想情况下,我想要实现的是设置 Visual Studio 的 Librarian -> Additional Dependencies 和 Additional Library Directories,并在 XCode 中实现相同的结果。

这是我目前所取得的成就:

set(LIB_LINKS_RUNTIME
    ${Vulkan_LIBRARIES}
    ${CMAKE_SOURCE_DIR}/bin/$<CONFIGURATION>/SDL2maind.lib
    ${CMAKE_SOURCE_DIR}/bin/$<CONFIGURATION>/SDL2d.lib
    ${CMAKE_SOURCE_DIR}/bin/$<CONFIGURATION>/imgui.lib
)
foreach(lib ${LIB_LINKS_RUNTIME})
    set (CMAKE_STATIC_LINKER_FLAGS "${CMAKE_STATIC_LINKER_FLAGS} ${lib}")
endforeach()

【问题讨论】:

    标签: cmake linker-flags


    【解决方案1】:

    根据https://cmake.org/cmake/help/latest/prop_tgt/STATIC_LIBRARY_OPTIONS.html STATIC_LIBRARY_OPTIONS 属性可以解决问题

    set_property(TARGET Runtime PROPERTY STATIC_LIBRARY_OPTIONS ${LIB_LINKS_RUNTIME})
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-02-25
      • 2016-09-03
      • 2012-09-06
      相关资源
      最近更新 更多