Cmake常用指令

${CMAKE_CURRENT_SOURCE_DIR}      当前正在处理的源代码目录的完整路径

${CMAKE_BINARY_DIR}                         当前项目的构建目录

${CMAKE_CURRENT_LIST_DIR}              当前处理的 CMakeLists.txt 文件所在的目录的完整路径

include_directories                                用于向编译器添加头文件目录

add_subdirectory                                  添加子目录

add_dependencies                                添加依赖文件

set_property                                          设置属性

get_filename_component                     用于从路径中获取指定的部分,如目录路径、文件名、文件扩展名等

CMAKE_MINIMUM_REQUIRED(VERSION 3.8)  //需要的最低版本
 
project (Hello) //工程名
 
//指定变量
SET (SOURCES
     src/hello.cpp
     src/main.cpp
    )
 
//⽣成可执⾏⽂件
ADD_EXECUTABLE(Hello ${SOURCES})
 
//将编译结果将存放在build/src ⽬录
ADD_SUBDIRECTORY(src bin)
 
/指定头文件目录
TARGET_INCLUDE_DIRECTORIES(Hello
    PRIVATE
        ${PROJECT_SOURCE_DIR}/include
    )
 
/构建静态库、动态库
ADD_LIBRARY(hello_library STATIC/SHARED
            src/hello.cpp
            )
//为库设置别名
ADD_LIBRARY(hello::library ALIAS hello_library)
 
ADD_EXECUTABLE(Hello_bin
        src/main.cpp
        )
//将静态库添加进可执行文件
TARGET_LINK_LIBRARIES(Hello_bin
    PRIVATE
      hello::library
)
//安装库、头文件、可执行文件配置等
INSTALL (TARGETS Hello_bin DESTINATION bin )
INSTALL (TARGETS hello_library DESTINATION lib)
INSTALL (DIRECTORY ${PROJECT_SOURCE_DIR}/include DESTINATION include)
INSTALL (FILES hello.conf DESTINATION etc)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值