当前位置:网站首页>CMake的安装和测试
CMake的安装和测试
2022-07-30 03:20:00 【CAir2】
上篇一文读懂CMake我们已经熟练掌握了CMake的脚本编写。安装顾名思义就是安装应用程序,例如将生成的可执行文件和动态库,拷贝到指定的安装位置。下面是install的基本语法。
安装
install(TARGETS <target>... [...])
install({
FILES | PROGRAMS} <file>... [...])
install(DIRECTORY <dir>... [...])
install(SCRIPT <file> [...])
install(CODE <code> [...])
install(EXPORT <export-name> [...])
#DESTINATION 表示安装位置
#如果设置了CMAKE_INSTALL_PREFIX则表示在CMAKE_INSTALL_PREFIX的基础位置+DESTINATION
#TARGETS 表示目标文件列表 例如可执行文件,库文件
install(TARGETS MathFunctions DESTINATION lib)
#FILES 表示文件列表
install(FILES MathFunctions.h DESTINATION include)
设置完成之后执行cmake --install 目录(cmake的输出目录,一般都是当前目录:build)
#执行Cmake
#cmake ../
#编译文件
#cmake --build .
#安装
#cmake --install .
#文件末尾添加
#设置安装目录,linux默认为/usr/local,windows默认为“C:\Program Files (x86)”
set(CMAKE_INSTALL_PREFIX "${PROJECT_BINARY_DIR}/install/")
#打印当前安装目录
install(CODE "message(\"CMAKE_INSTALL_PREFIX=${CMAKE_INSTALL_PREFIX}\")")
#安装指定文件
install(TARGETS hellow DESTINATION bin)

这样安装OK了,但是linux需要注意so的搜寻规则,否则可能导致so找不到,从而程序运行失败。
测试
边栏推荐
- JS Bom window innerWidth clientWidth onresize 窗口滚动偏移量 返回顶部
- Not enough information to list load addresses in the image map. (STM32 compilation error)
- 杜教筛【莫比乌斯前缀和,欧拉函数前缀和】推导与模板【一千五百字】
- leetcode 5 questions a day-Day01
- 阿里云EasyNLP中文文图生成模型带你秒变艺术家
- 【ModelArts系列】华为ModelArts Notebook训练yolov3模型(开发环境)
- 【ModelArts系列】华为ModelArts训练yolov3模型(训练管理)
- 单片机没有随机数发生器如何生成随机数——2022.07.26
- Leetcode.24 两两交换链表中的节点(递归)
- 机器学习(十五)异常检测
猜你喜欢
![[Flink] How to determine the cluster planning size from development to production launch?](/img/7a/52dae876a50980c5055be131c2254b.png)
[Flink] How to determine the cluster planning size from development to production launch?

uni-app实现跨端开发手机蓝牙接收和发送数据

DAP data processing process

OA项目之待开会议&历史会议&所有会议

SQL 入门之第一讲——MySQL 8.0.29安装教程(windows 64位)

The most important transport layer

如何有效进行回顾会议(上)?

NLP Natural Language Processing (1)

Ansible introduction (detailed) features + advantages + design concept + application field + system architecture + working principle + task execution process

数据湖:数据集成工具DataX
随机推荐
A transaction is in Mysql?What's the use?
sublime text 3 设置
JUC(六):synchronized
浏览器缓存机制
【JS】iframe 嵌入页面用法
Testers, what else do you need to know besides testing?
JUC(八):synchronized小练习
Stimulsoft ReportsJS and DashboardsJS. 2022.3.3
乖宝宠物IPO过会:年营收25.75亿 KKR与君联是股东
群论-Burnside引理与Polya定理 三千字
NLP自然语言处理(一)
【Flink】从开发到生产上线,如何确定集群规划大小 ?
新手入门C#:实现简易的计算器功能
LeetCode 114. 二叉树展开为链表(一题三吃)
还在用命令行看日志?快用Kibana吧,可视化日志分析YYDS
JUC (5): Problems caused by sharing
YOLOv7的一些理解
JUC(七):变量的线程安全分析
奥比中光高级副总裁王兆民离职 董事会秘书暂未取得资格证
联邦学习综述(二)——联邦学习的分类、框架及未来研究方向