[笔记]Modern CMake 1:Modern CMake简介

Modern CMake指的是CMake3.1+版本,它提供了更整洁、强大和优雅的构建体验。本文介绍了运行CMake工程的流程,如构建、选择编译器和生成器,以及设置选项。同时,强调了避免CMake反模式,如不使用全局函数、避免非必要的PUBLIC依赖等,并提倡使用正确的CMake模式,如以targets为中心、导出接口和编写Config.cmake文件等。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >


学习 Modern CMake的总结和记录。

什么是Modern CMake?指的是CMake3.1+,甚至是CMake3.14+!她是整洁,强大,优雅的,你可以花更多的精力在编码上。CMake3.11+的版本速度上有显著的提升。

运行CMake工程的流程

  • 构建工程 $ cmake --build …
  • 选择编译器 $ CC=clang CXX=clang++ cmake …
  • 选择生成器 $ cmake -G"Visual Studio 14 2015"(cmake --help)
  • 选项设置 $ cmake -D
  • 构建详细信息$ VERBOSE=1 make 或者 make VERBOSE=1
  • 调试CMake $ --trace所有CMake文件,–trace-source="filename"只调试filename文件

标准选项

  • -DCMAKE_BUILD_TYPE= 编译类型选项如 Release, RelWithDebInfo, Debug, 或其他
  • -DCMAKE_INSTALL_PREFIX= 本地安装路基
  • -D BUILD_SHARED_LIBS= 是否为动态链接库

能做的和不能做的

CMake反模式

  • 不要使用全局函数:包括link_directories,include_libra
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值