首页
›
编程基础与工程化
›
017-CMake构建系统
›
《掌握CMake模块与工具链》
VIP20
本课程属于:017-CMake构建系统
编程基础与工程化 · 共 20 门相关课程,组合学习更完整。
查看所属VIP全部课程 →
← 返回所属目录
咨询 / 购买
掌握CMake模块与工具链
📚 共计 30 章节
01
CMake概述
CMake是什么 · 为什么选择CMake · 核心概念:目标、生成器、工具链
入门
概念
02
CMake安装与配置
跨平台安装指南 · 环境变量设置 · 验证安装
环境
配置
03
第一个CMake项目
CMakeLists.txt基础 · project()与cmake_minimum_required() · 构建与运行
实战
基础
04
变量与缓存
定义变量 · 缓存变量 · 环境变量 · 变量作用域
变量
缓存
05
列表操作
list()命令详解 · 增删改查 · 列表与字符串转换
列表
命令
06
控制流
if/elseif/else · foreach循环 · while循环 · break与continue
逻辑
循环
07
函数与宏
function()定义 · macro()定义 · 参数传递 · 返回值与作用域
函数
宏
08
目标构建
add_executable() · add_library() · 目标属性 · 目标依赖
构建
目标
09
库管理
静态库与动态库 · SHARED/STATIC/MODULE · 安装与导出
库
安装
10
头文件管理
target_include_directories() · PUBLIC/PRIVATE/INTERFACE · 生成头文件
头文件
接口
11
链接管理
target_link_libraries() · 链接顺序 · 接口链接库
链接
依赖
12
编译选项
target_compile_options() · target_compile_definitions() · target_compile_features()
编译
特性
13
生成器表达式
$<...>语法 · 条件表达式 · 编译信息查询 · 调试技巧
表达式
高级
14
查找包
find_package()基础 · Config模式与Module模式 · 编写Find模块
包管理
查找
15
内置模块
CMake内置模块概览 · CheckIncludeFile · CheckFunctionExists · ExternalProject
模块
内置
16
FetchContent
依赖管理利器 · 下载与集成第三方库 · 版本控制与更新
依赖
第三方
17
CPack打包
CPack配置 · 生成安装包(NSIS、DMG、DEB) · 自定义打包行为
打包
发布
18
CTest测试
enable_testing() · add_test() · 测试框架集成(Google Test) · 测试覆盖率
测试
CTest
19
CDash持续集成
CDash配置 · 提交测试结果 · 仪表盘分析
CI
CDash
20
工具链文件
什么是工具链文件 · 编写工具链文件 · 交叉编译基础
工具链
交叉编译
21
交叉编译实战
ARM嵌入式交叉编译 · 工具链变量设置 · 系统根目录(sysroot)
ARM
嵌入式
22
编译器检测
CMAKE_C_COMPILER / CMAKE_CXX_COMPILER · 编译器ID与版本 · 特性检测
编译器
检测
23
平台检测
CMAKE_SYSTEM_NAME · CMAKE_SYSTEM_PROCESSOR · 平台相关代码处理
平台
系统
24
自定义命令
add_custom_command() · add_custom_target() · 生成源文件 · 构建后操作
命令
自定义
25
文件操作
file()命令详解 · 读写文件 · 文件下载 · 文件锁
文件
IO
26
目录与路径
CMAKE_SOURCE_DIR · CMAKE_BINARY_DIR · 相对/绝对路径 · 路径处理函数
路径
目录
27
属性系统
目录属性 · 目标属性 · 源文件属性 · 全局属性 · set_property() / get_property()
属性
系统
28
策略与兼容性
cmake_policy() · 策略版本 · 处理CMake版本升级
策略
兼容
29
大型项目组织
add_subdirectory() · 子项目隔离 · 全局与局部变量 · 项目模板
项目
组织
30
最佳实践与调试
CMake调试技巧 · message()日志 · --trace与--debug-output · 常见错误与解决方案
调试
最佳实践
所属VIP或分类
同VIP:CMake-FetchContent依赖管理与模块化构建
同VIP:CMake-Presets工程配置与多环境构建实战
同VIP:CMakeLists.txt-完全解析