首页
›
编程基础与工程化
›
012-Makefile
›
《Makefile文件读写高效管理实战》
VIP20
本课程属于:012-Makefile
编程基础与工程化 · 共 20 门相关课程,组合学习更完整。
查看所属VIP全部课程 →
← 返回所属目录
咨询 / 购买
Makefile文件读写高效管理实战
📚 共计 30 章节
01
Makefile 概述
什么是 Makefile、为什么需要、与编译工具链的关系、核心思想(依赖与规则)
入门
核心概念
02
Makefile 基础规则
目标、依赖、命令语法结构 · Tab与空格区别 · 第一个示例
语法
实操
03
变量与赋值
定义与引用 · 自动变量 $@ $^ $< · 赋值运算符 = := ?= +=
变量
赋值
04
隐式规则与模式匹配
隐式规则 · 模式规则 %.o:%.c · 静态模式 · VPATH / vpath
模式
路径
05
条件判断与函数
ifeq/ifneq/ifdef/ifndef · wildcard patsubst notdir foreach call shell
条件
函数
06
多目标与多规则
多目标规则 · 多规则依赖 · 双冒号规则 · 规则分组
结构
组织
07
文件包含与 Makefile 组织
include 指令 · 递归调用 · 子目录管理 · 模块化设计
模块
工程
08
命令执行与回显
回显静默 @ · 错误处理 - · 多行命令 · 并行执行 -j
执行
并行
09
伪目标与特殊目标
.PHONY · .SUFFIXES .DEFAULT .PRECIOUS .INTERMEDIATE .SECONDARY
伪目标
特殊
10
Makefile 调试技巧
--just-print · --debug · info/warning/error · 打印变量 · 依赖图
调试
诊断
11
字符串处理
替换 · 截取 · 查找 · 比较 · 连接与分割
字符串
文本
12
文件名处理
获取目录/文件名/后缀 · 添加前缀后缀 · 路径处理
文件
路径
13
文件操作
存在性检查 · 时间戳比较 · 创建删除 · 读写操作
文件系统
实用
14
Shell 命令集成
调用 shell · 返回值处理 · 变量传递
shell
集成
15
环境变量
读取与设置 · 优先级 · 传递
环境
配置
16
递归变量与扩展
递归展开 vs 简单展开 · 延迟/立即展开 · override
变量
展开
17
目标变量与模式变量
目标特定变量 · 模式特定变量 · 作用域控制
作用域
变量
18
函数式编程
call 高级用法 · eval 动态规则 · value 与变量引用
函数
动态
19
自动依赖生成
gcc -MM · 依赖文件包含 · 自动更新
依赖
编译
20
库管理
静态库 · 动态库 · 库依赖管理
库
链接
21
多平台支持
跨平台编译 · 条件编译 · 平台变量 · 交叉编译
跨平台
交叉编译
22
测试与质量
单元测试 · 代码覆盖率 · 静态分析 · 格式化
测试
质量
23
安装与部署
安装规则 · 卸载规则 · 打包 · 发布
部署
发布
24
文档生成
Doxygen 集成 · 文档规则 · 清理规则
文档
Doxygen
25
版本控制集成
Git 版本号自动生成 · 版本文件 · 发布管理
Git
版本
26
性能优化
增量编译 · 并行编译 · ccache · distcc
优化
缓存
27
错误处理与日志
错误处理 · 日志记录 · 错误恢复 · 退出码
错误
日志
28
大型项目管理
模块化 · 依赖图 · 构建顺序 · 增量策略
架构
规模
29
Makefile 与 CMake 对比
CMake 基础 · 转换 · 优劣 · 选型建议
对比
CMake
30
实战项目
从零构建 C++ 项目 · 多目录 · 第三方库 · CI配置
实战
综合
所属VIP或分类
同VIP:Makefile与Qt库链接实战
同VIP:Makefile与Qt项目构建实战
同VIP:Makefile与系统编程入门