zoukankan      html  css  js  c++  java
  • 设定cmake输出目录

    对于我来说,我使用的是cmake 3.5,但below(set variable)不起作用:

    set(

          ARCHIVE_OUTPUT_DIRECTORY "/home/xy/cmake_practice/lib/"

          LIBRARY_OUTPUT_DIRECTORY "/home/xy/cmake_practice/lib/"

          RUNTIME_OUTPUT_DIRECTORY "/home/xy/cmake_practice/bin/"

    )

    但这有效(set set_target_properties):

    set_target_properties(demo5

        PROPERTIES

        ARCHIVE_OUTPUT_DIRECTORY "/home/xy/cmake_practice/lib/"

        LIBRARY_OUTPUT_DIRECTORY "/home/xy/cmake_practice/lib/"

        RUNTIME_OUTPUT_DIRECTORY "/home/xy/cmake_practice/bin/"

    )

    这个函数也没起作用

    FUNCTION(SET_OUTPUT_DIR customDir)
        MESSAGE("${customDir}")
        SET (OUTPUT_DIR "${customDir}")
        SET (CMAKE_RUNTIME_OUTPUT_DIRECTORY "${OUTPUT_DIR}")
        SET (CMAKE_LIBRARY_OUTPUT_DIRECTORY "${OUTPUT_DIR}")
        SET (CMAKE_ARCHIVE_OUTPUT_DIRECTORY "${OUTPUT_DIR}")
        foreach (OUTPUTCONFIG ${CMAKE_CONFIGURATION_TYPES})
            STRING (TOUPPER ${OUTPUTCONFIG} OUTPUTCONFIG)
            SET (CMAKE_RUNTIME_OUTPUT_DIRECTORY_${OUTPUTCONFIG} "${OUTPUT_DIR}")
            SET (CMAKE_LIBRARY_OUTPUT_DIRECTORY_${OUTPUTCONFIG} "${OUTPUT_DIR}")
            SET (CMAKE_ARCHIVE_OUTPUT_DIRECTORY_${OUTPUTCONFIG} "${OUTPUT_DIR}")
        endforeach ()
        MESSAGE (STATUS "Output path: ${OUTPUT_DIR}")
    ENDFUNCTION()

  • 相关阅读:
    初学版本控制更新Version control
    关于函数式编程(Functional Programming)
    Annotation
    Container 、Injection
    Build Tools
    Version Control
    URL和URI的区别
    函数式编程语言
    HTTP协议的简单解析
    Windows10安装MySQL8.0
  • 原文地址:https://www.cnblogs.com/zhoug2020/p/13659855.html
Copyright © 2011-2022 走看看