cmake 预定义变量

基本变量

(1) PROJECT_SOURCE_DIR

cmake命令后紧跟的目录, 一般是工程的根目录.

(2) PROJECT_BINARY_DIR

执行cmake命令的目录, 通常是${PROJECT_SOURCE_DIR}/build

(3) CMAKE_CURRENT_SOURCE_DIR

当前处理的CMakeLists.txt所在路径

(4) CMAKE_CURRENT_BINARY_DIR

target编译目录, 使用ADD_SUBDIRECTORY(src bin)可以更改此变量的值, SET(EXECUTABLE_OUTPUT_PATH <新路径 > ) 并不会对此变量有影响, 只是改变了最终目录文件的存储路径

(5) CMAKE_CURRENT_LIST_FILE

输出调用这个变量的CMakeLists.txt的完整路径

(6) CMAKE_CURRENT_LIST_LINE

输出这个变量所在的行

(7) CMAKE_MODULE_PATH

定义自己的cmake模块所在路径, 这个变量用于定义自己的cmake模块所在的路径, 如果你的工程比较复杂, 有可能自己编写一些cmake模块,

(8)EXECUTABLE_OUTPUT_PATH

重新定义目录二进制可执行文件的存放位置

(9) LIBRARY_OUTPUT_PATH

重新定义目标链接库文件的存放位置

(10) PROJECT_NAME

返回通过PROJECt指令定义的项目名称

环境变量

(1) 使用$ENV{NAME}可以调用系统的环境变量,比如:

MESSAGE(STATUS “HOME dir:”$ENV{HOME})

(2) 设置环境变量的方式, SET(ENV{name},value)

(3) CMAKE_INCLUDE_CURRENT_DIR

(4) CMAKE_INCLUDE_DIRECTORIES_PROJECT_BEFORE

将工程提供的头文件目录始终至于系统头文件目录的前面, 当你定义 的头文件确实跟系统发生冲突时可以提供一些帮助.

(5) CMAKE_INCLUDE_PATH , CMAKE_LIBRARY_PATH

开关选项

(1) BUILD_SHARED_LIBS

控制默认的库编译方式, 如果未进行设置, 使用ADD_LIBRARY时又没有指定库类型默认编译生成的库都是静态库

(2) CMAKE_C_FLAGS

设置C编译选项

(3) CMAKE_CXX_FLAGS

设置C++编译选项

(4) CMAKE_C_COMPILER

指定C编译 器

(5)CMAKE_CXX_COMPILER

指定C++编译器

(6) CMAKE_BUILD_TYPE

build类型(Debug, Release....)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值