【cmake变量笔记】

7 篇文章 0 订阅
6 篇文章 0 订阅

1. 查看当前CMAKE中所有的变量的值的代码

get_cmake_property(_variableNames VARIABLES)
foreach(_variableName ${_variableNames})
    message(STATUS "${_variableName}=${${_variableName}}")
endforeach()

CMAKE_CURRENT_LIST_DIR
存储着当前处理的lists文件所在的目录

2. 如果要在子目录中添加CMakeLists.txt

子目录中编译的目标使用的第三方库,可以在总目录中配置好。
比如目录A中有一个CMakeLists.txt,该文件中使用了add_subdirectory(example)添加子目录example到项目中。子目录example的CMakeLists.txt中添加了编译目标(add_executable),并且在前面几行写了需要第三方库find_package(Sophus required),那么可以在目录A的CMakeLists.txt中设置set(Sophus_DIR xxxxxx)来引导cmake查找Sophus库的位置。

3.CUDACXX和CMAKE_CUDA_COMPILER

原始文档地址https://cmake.org/cmake/help/latest/envvar/CUDACXX.html
CUDACXX是CMake的环境变量,其初始值是从调用进程环境中得来的。适用于编译CUDA语言可执行文件。仅在第一次配置中用于CMake确定CUDA编译器,CUDA的值保存在缓存中,条目为CMAKE_CUDA_COMPILER。
也就是环境变量中需要有CUDACXX这一条变量,不然会报No CMAKE_CUDA_COMPILER could be found错误,在Clion编译某个项目时我遇到了这个错误,解决方法是:去File->settings->Build->CMake中最下面一行添加上环境变量CUDACXX=xxxxx(你的CUDA的nvcc的路径),然后Tools->CMake->Reset Cache and Reload Project就行。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

蓝域小兵

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值