CMake 输出路径的设置

cmake 输出路径通常需要设置一下,这里记录一下:

1.设置可执行文件的输出路径:

SET(EXECUTABLE_OUTPUT_PATH ${PROJECT_SOURCE_DIR}/../bin)

2.静态库 lib 输出路径:

set(CMAKE_ARCHIVE_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/../bin)

3.动态库输出路径(注意这个放在最后):

SET_TARGET_PROPERTIES(dllname PROPERTIES RUNTIME_OUTPUT_DIRECTORY ../bin)

4.上面两条语句分别设置了Debug版本和Release版本下库文件的后缀名

set(CMAKE_DEBUG_POSTFIX "_d")    set(CMAKE_RELEASE_POSTFIX "_r") 

5.设置了Debug版本和Release版本下可执行文件的后缀名

set_target_properties(${TARGET_NAME} PROPERTIES DEBUG_POSTFIX "_d")     set_target_properties(${TARGET_NAME} PROPERTIES RELEASE_POSTFIX "_r")

6.设置项目名称:

PROJECT( name )

7.设置链接库名称:

target_link_libraries

例:target_link_libraries(
                     DealWithMould
             ${VTK_LIBRARIES}
             )

target_link_libraries(myProject hello) 

7.可执行文件名,通过指定的源文件列表构建出可执行目标文件:

ADD_EXECUTABLE
ADD_EXECUTABLE(main main.cpp context.cpp patten.cpp patten.hpp )

8. 为生成的target配置安装目录

install(TARGETS MyLib
        EXPORT MyLibTargets 
        LIBRARY DESTINATION lib  # 动态库安装路径
        ARCHIVE DESTINATION lib  # 静态库安装路径
        RUNTIME DESTINATION bin  # 可执行文件安装路径
        PUBLIC_HEADER DESTINATION include  # 头文件安装路径
        )

LIBRARY, ARCHIVE, RUNTIME, PUBLIC_HEADER是可选的,可以根据需要进行选择。 DESTINATION后面的路径可以自行制定,根目录默认为CMAKE_INSTALL_PREFIX,可以试用set方法进行指定,如果使用默认值的话,Unix系统的默认值为 /usr/local, Windows的默认值为 c:/Program Files/${PROJECT_NAME}。比如字linux系统下若LIBRARY的安装路径指定为lib,即为/usr/local/lib。所以要安装mymath mymathapp我们可以这样写

上一篇:Android系统下的动态Dex加载与app速度优化


下一篇:AS项目添加C/C++代码