首页
›
编程基础与工程化
›
012-Makefile
›
《Makefile工程化与性能优化实战》
VIP20
本课程属于:012-Makefile
编程基础与工程化 · 共 20 门相关课程,组合学习更完整。
查看所属VIP全部课程 →
← 返回所属目录
咨询 / 购买
Makefile 工程化与性能优化实战
📚 共计 30 章节
01
Makefile入门
什么是Makefile · 为什么需要Makefile · 与编译流程的关系
基础
概念
02
Makefile基础语法
目标 · 依赖 · 命令 · 注释 · 变量赋值 (= := ?= +=)
语法
变量
03
Makefile变量与模式
自动变量 ($@ $< $^) · 模式规则 (%.o: %.c)
变量
模式
04
Makefile函数
字符串处理 (subst patsubst strip) · 文件名函数 (dir notdir basename)
函数
字符串
05
Makefile条件判断
ifeq · ifneq · ifdef · ifndef 使用场景
条件
逻辑
06
Makefile多目标构建
伪目标 .PHONY · 多目标规则 · 并行构建 (-j)
并行
伪目标
07
Makefile工程化结构
单目录 vs 多目录 · 头文件依赖自动生成 (-MMD -MP)
工程
依赖
08
Makefile静态模式
static pattern rules · filter函数配合使用
模式
静态
09
Makefile递归构建
$(MAKE) -C subdir · 变量传递与导出 (export)
递归
子目录
10
Makefile构建缓存
ccache集成 · 增量编译原理 · 时间戳比较
缓存
ccache
11
Makefile性能分析
make --debug · make -d · 构建耗时分析
调试
性能
12
Makefile并行优化
-j参数调优 · 依赖图优化 · 减少串行瓶颈
并行
调优
13
Makefile编译优化
-O级别选择 · LTO (链接时优化) · PGO
编译
LTO
14
Makefile链接优化
链接顺序 · --start-group/--end-group · gc-sections
链接
优化
15
Makefile预编译头
PCH (Precompiled Headers) 集成与加速
PCH
预编译
16
Makefile分布式构建
distcc · icecream集成 · 远程编译
分布式
distcc
17
Makefile增量构建优化
细粒度依赖 · 避免全量重编 · .d文件管理
增量
依赖
18
Makefile构建配置
Debug vs Release · 不同平台 (Linux/Mac/Windows) 适配
配置
跨平台
19
Makefile第三方库管理
pkg-config集成 · 静态库与动态库链接
库管理
pkg-config
20
Makefile测试集成
单元测试目标 · test target · 覆盖率生成
测试
覆盖率
21
Makefile安装与打包
install target · DESTDIR支持 · deb/rpm打包
安装
打包
22
Makefile代码风格
缩进规范 · 变量命名 · 函数封装 · 注释规范
风格
规范
23
Makefile调试技巧
$(warning) $(info) $(error) · 空运行 (-n)
调试
技巧
24
Makefile与CMake对比
何时用Makefile · 何时用CMake · 混合使用
对比
CMake
25
Makefile与Ninja对比
构建速度 · 语法差异 · 迁移策略
对比
Ninja
26
Makefile大型项目实战
Linux内核Makefile分析 · FFmpeg构建系统
实战
内核
27
Makefile自定义函数
define/endef · call函数 · eval函数
函数
自定义
28
Makefile二次扩展
$$变量 · 二次展开 · 延迟展开与立即展开
展开
变量
29
Makefile构建安全
敏感信息保护 · 构建沙箱 · 依赖完整性校验
安全
沙箱
30
Makefile未来趋势
Meson · Bazel · Buck 等现代构建系统对比与展望
趋势
对比
所属VIP或分类
同VIP:Makefile与Qt库链接实战
同VIP:Makefile与Qt项目构建实战
同VIP:Makefile与系统编程入门