01
CPack初探
什么是CPack · CPack在CMake生态中的角色 · 为什么需要组件安装
概念入门
02
环境准备
安装CMake与CPack · 验证环境 · 第一个CPack示例
工具配置
03
CMake基础回顾
CMakeLists.txt结构 · add_library与add_executable · install命令初识
CMake基础
04
install命令详解
TARGETS · FILES · DIRECTORY · SCRIPT · CODE 等安装类型
命令核心
05
COMPONENT参数
install命令中的COMPONENT关键字 · 组件命名规范 · 组件分组逻辑
组件参数
06
CPack组件元数据
COMPONENT_DESCRIPTION · COMPONENT_SUMMARY · COMPONENT_GROUP
元数据描述
07
CPack组件依赖声明
COMPONENT_DEPENDS · 依赖关系图 · 循环依赖检测
依赖检测
08
CPack组件安装类型
Required组件 · Optional组件 · Hidden组件
类型安装
09
CPack组件分组
COMPONENT_GROUP · 分组嵌套 · 分组依赖
分组结构
10
CPack配置文件
CPackConfig.cmake · CPackSourceConfig.cmake · 常用变量
配置变量
11
CPack生成器概述
Archive · NSIS · RPM · DEB · DragNDrop 等生成器
生成器概览
12
Archive生成器
ZIP · TGZ · TBZ2 · TXZ 格式配置与组件打包
归档压缩
13
NSIS生成器
Windows安装包 · 组件选择界面 · 自定义页面
Windows安装
14
RPM生成器
Linux RPM包 · 组件依赖映射 · spec文件生成
LinuxRPM
15
DEB生成器
Debian包 · control文件 · 组件与依赖管理
DebianDEB
16
DragNDrop生成器
macOS DMG包 · 组件可视化 · 背景定制
macOSDMG
17
组件安装路径控制
INSTALL_DESTINATION · 路径变量 · 平台差异处理
路径平台
18
组件版本管理
版本号规范 · 组件版本依赖 · 版本兼容性检查
版本兼容
19
组件安装后脚本
POST_INSTALL_SCRIPT · 卸载脚本 · 环境变量配置
脚本环境
20
组件卸载管理
卸载逻辑 · 组件注册表 · 清理残留文件
卸载清理
21
多组件项目实战
项目结构设计 · 组件划分策略 · 依赖关系梳理
实战架构
22
组件条件编译
if/endif与组件 · 平台相关组件 · 特性开关
条件编译
23
组件测试
CTest集成 · 组件安装验证 · 依赖完整性测试
测试CTest
24
组件文档生成
CPack组件文档 · 自动生成安装说明 · 用户手册集成
文档手册
25
组件国际化
多语言支持 · 组件描述翻译 · 安装界面本地化
i18n本地化
26
组件签名与安全
数字签名 · 组件完整性校验 · 安全更新机制
安全签名
27
组件仓库管理
私有仓库搭建 · 组件上传 · 版本发布流程
仓库发布
28
CI/CD集成
GitHub Actions · Jenkins · 组件自动构建与发布
CI/CD自动化
29
性能优化
大型项目组件打包优化 · 增量安装 · 并行安装
性能优化
30
综合案例
从零构建一个带组件依赖管理的桌面应用安装包
实战完整