代码之家  ›  专栏  ›  技术社区  ›  newkid

cmake不移动目标以安装目录

  •  0
  • newkid  · 技术社区  · 6 年前

    ProjDir
    | - CMakeLists.txt
    | - SubDir1
    | | - CMakeLists.txt
    | | - src
    | | - inc
    | - SubDir2
    | | - CMakeLists.txt
    | | - src
    | | - inc
    

    我在每个子目录中都有目标,子目录包含在主目录中 CMakeLists.txt

    add_subdirectory(${CMAKE_SOURCE_DIR}/SubDir1)
    add_subdirectory(${CMAKE_SOURCE_DIR}/SubDir2)
    

    我在每个子目录中的目标都安装了cmake函数 install . 这些命令在 CMakeLists.txt文件 并按目标指定(请参见 this 后)。

    install(TARGETS exe1 DESTINATION ${CMAKE_INSTALL_PREFIX}/bin CONFIGURATIONS Release)
    

    安装 命令不会将二进制文件移动到 ${CMAKE_INSTALL_PREFIX}/bin 而是在生成输出后完成:

    Install the project...
    -- Install configuration: ""
    

    1 回复  |  直到 6 年前
        1
  •  1
  •   Tsyvarev    6 年前

    在Linux上,默认构建配置为 :既不调试,也不发布等。可以很容易地从CMake输出中找到:

    -- Install configuration: ""
    

    因为你的 install Release 配置,默认情况下不会触发(使用 空的