当前位置: 首页 > news >正文

cmake阅读笔记

阅读笔记

  • 1. cmake使用
    • 1.1 查看cmake各种变量
    • 1.2 调试信息
    • 1.3 清理构建树
    • 1.4 编译项目
    • 1.5 安装项目
    • 1.6 命令行工具
    • 1.7 CTest
    • 2.可视化

1. cmake使用

1.1 查看cmake各种变量

# 仅查看缓存变量
cmake -L -S .  -B build
# 查看该变量的更多帮助信息
cmake -LH -S . -B build
cmake -LHA -S . -B build
# 但是, -D 的不会打印出来

1.2 调试信息

cmake --log-level=ERROR|WARNING|NOTICE|STATUS|VERBOSE|DEBUG|TRACE
cmake --trace -S . -B build

1.3 清理构建树

cmake --fresh -S . -B build

1.4 编译项目

# cmake --build <build tree>, 这里<build tree> == -B时传入的参数
# cmake --build <build tree> -- <build tool options>
cmake --build build
# 并行编译
cmake --build build -j
# 编译指定的target
cmake --build <build tree> --target <target1> ...
# 清理构建树
cmake --build <build tree> -t clean
# 语法糖
cmake --build <build tree> --clean-first
# 指定构建类型(比如Debug或者Release),默认值是Debug
cmake --build <build tree> --config Debug
cmake --build <build tree> --config RelWithDebInfo
# 调试构建过程
cmake --build <build tree> --verbose
cmake --build <build tree> -v

1.5 安装项目

cmake --install <build tree> [<options>]
# 自定义安装路径
cmake --instlal <build tree> --install-prefix <prefix>
cmake --install <build tree> --prefix <prefix>
# 多配置生成器,可以安装Debug/Release/MinSizeRel/RelWithDebInfo
cmake --install <build tree> --prefix <prefix> --config Release
# cmake --install build --prefix install --config Release
# 调试信息
cmake --install <build tree> -v
cmake --install <build tree> --verbose

1.6 命令行工具

cmake -E <command> [<options>]

1.7 CTest

# ctest --build-and-test <source tree>  <build tree> --build-generator "Visual Studio 16 2019"
ctest --build-and-test . build --build-generator "Visual Studio 16 2019"
ctest --build-and-test . build --build-generator "Unix Makefiles"
# 在 build tree目录下, 执行ctest才能进行测试

2.可视化

cmake --graphviz=test.dot

相关文章:

  • HTTP代理:内容分发战场上的「隐形指挥官」
  • Lettuce与Springboot集成使用
  • 蓝桥杯-数字诗意
  • MTK-Android12-13 屏幕永不休眠功能实现
  • 落子宜宾:全方位解析树莓集团现状布局
  • Vue3+Vite+TypeScript+Element Plus开发-06.Header响应式菜单缩展
  • AIDD-人工智能药物设计-TCMP-12个公开的中药数据库
  • window上 docker使用ros2开发并usbip共享usb设备
  • C# 中的 nameof 表达式:用法详解与最佳实践
  • Vue3 + Vite + TS,使用 Web Worker,web worker进阶 hooks
  • Qt中自定义插件和库(1)
  • 深入理解Docker Bridge网络模式:原理与实践指南
  • leetcode_203. 移除链表元素_java
  • 网络安全法规与入门指南
  • 【Android Studio】第一个Android程序 运行流程 程序调试 | 实操实战图文详细
  • net9.0 中System.Text.Json序列化和反序列化
  • spring-cloud-starter-dubbo使用说明
  • TypeScript:从类型工具到前端系统设计的跃迁
  • Python和MicroPython的解释器区别
  • 【算法学习计划】回溯 -- 综合题目(上)
  • 石家庄网站seo服务/快速开发平台
  • 网站开发公司不干了/网站运营怎么做
  • 南京建设网站制作/互联网营销师怎么报名
  • 腾讯云服务器控制台/百度seo多久能优化关键词
  • WordPress 插件修改界面/快速排名seo
  • 做网站网页排版错误/西安高端网站建设公司