VIP10
本课程属于:047-软件测试与质量工程 后端、数据与云原生工程 · 共 10 门相关课程,组合学习更完整。
查看所属VIP全部课程 →
← 返回所属目录 咨询 / 购买

Makefile实战:界面布局与资源管理

📚 共计 30 章节
01
Makefile入门
什么是Makefile、为什么需要Makefile、基本规则与工作原理
基础原理
02
Makefile基础语法
目标、依赖与命令书写规则 · Tab与空格 · 注释写法
语法规范
03
变量与赋值
变量定义引用 · 自动变量($@ $< $^) · 赋值运算符区别
变量赋值
04
模式规则与静态模式
%通配符 · 静态模式规则 · 多目标构建
模式通配
05
函数的使用
字符串处理(subst patsubst strip) · 文件名函数 · foreach/if/call
函数字符串
06
条件判断
ifeq ifneq ifdef ifndef · 实战案例
条件逻辑
07
文件包含与Makefile嵌套
include指令 · 多级目录组织 · 递归make优缺点
嵌套模块
08
伪目标与强制目标
.PHONY作用 · all clean install distclean
伪目标清理
09
自动依赖生成
gcc -MM生成依赖 · .d文件 · 增量编译实现
依赖增量
10
多目标构建
同时生成多个可执行文件 · 库文件管理 · all目标妙用
多目标all
11
静态库与动态库
ar打包静态库 · gcc -shared动态库 · 链接库写法
库链接
12
Makefile中的Shell命令
命令执行 · 错误忽略(-) · 不显示(@) · 多行命令
Shell执行
13
VPATH与vpath
源码编译分离 · 指定搜索路径 · 多目录源文件管理
路径搜索
14
Makefile调试技巧
info/warning/error · make -p · make -d
调试诊断
15
环境变量
环境变量传递 · export · override指令
环境export
16
Makefile与Git版本控制
自动获取版本号 · 编译时间戳 · 构建信息嵌入
Git版本
17
交叉编译
定义交叉编译器 · 工具链路径 · 多平台构建
交叉平台
18
并行构建
-j选项 · 依赖关系影响 · .NOTPARALLEL
并行性能
19
二次扩展
.SECONDEXPANSION · 动态依赖生成
扩展动态
20
空目标与双冒号规则
空目标文件技巧 · 双冒号规则使用场景
技巧双冒号
21
隐含规则
隐含规则列表 · 禁用 · 自定义隐含规则
隐含自动
22
库搜索
-l -L选项 · 库依赖顺序 · 静态动态库混合
库搜索链接
23
安装与卸载
DESTDIR prefix · install命令 · uninstall目标
安装部署
24
测试框架
test目标 · 自动化测试 · 覆盖率报告
测试覆盖率
25
代码风格检查
集成cppcheck · clang-tidy · 格式化检查
风格静态分析
26
文档生成
集成Doxygen · 自动生成API文档 · 文档清理
文档Doxygen
27
容器化构建
Docker集成 · 容器内编译 · 多阶段构建
Docker容器
28
持续集成
CI/CD集成 · 环境变量传递 · 构建状态输出
CI自动化
29
性能优化
减少不必要重新编译 · 缓存编译结果 · 增量构建优化
优化增量
30
综合实战
从零构建完整C/C++项目 · 多模块 · 测试 · 文档 · 安装
实战项目