CMake: set 普通变量、全局变量

1.设置普通变量

set(<variable> <value>... [PARENT_SCOPE])
  • 如果value只有一个,将variable设为value
  • 如果没有value值,取消设置variable,和unset()效果一样
  • 父级目录设置的普通变量,子级目录可以访问,反之不行

2.设置缓存变量

set(<variable> <value>... CACHE <type> <docstring> [FORCE])
  • CACHE表明缓存,即全局变量,可以被所有的CMakeLists共享访问
  • docstring为变量说明,在cmake-gui中可以显示提示
  • 变量类型type可选下列值
    1. BOOL : 可选值为 ON\OFF,在cmake-gui中显示为一个可选框
    2. FILEPATH:文件位置路径,在cmake-gui中显示为一个文件路径框
    3. PATH:文件夹位置路径,在cmake-gui中显示为一个文件路径框
    4. STRING:一行文本,在cmake-gui中显示为一个文本框或者一个下拉的选择框
    5. INTERNAL:一行文本,在cmake-gui中不显示,表示在整个运行过程中值保持恒定

3.清除缓存变量

如果增加了一个CACHE后,想删掉,直接删除CmakeCache.txt文件是不行的,在cmake-gui中仍然会有缓存。

正确的做法是CMake-Gui->File->Delete Cache,之后将CmakeLists.txt中需要删除的Cache变量删除,再执行Cmake-gui,此变量就不会在gui中显示了。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值