资料介绍
很全面的MAKEFILE学习手册,值得阅读。
目 录Table of Contents
GNU make中文手册..................................................................................................................... 1
er - 3.8....................................................................................................................................... 1
第一章:概述...............................................................................................................................7
1.1 概述................................................................................................................................. 7
1.2 准备知识.......................................................................................................................... 8
第二章GNU make 介绍............................................................................................................. 9
2 GNU make 介绍.................................................................................................................... 9
2.1 Makefile简介.................................................................................................................. 10
2.2 Makefile规则介绍........................................................................................................... 11
2.3 简单的示例..................................................................................................................... 12
2.4 make如何工作............................................................................................................... 13
2.5 指定变量........................................................................................................................ 15
2.6 自动推导规则................................................................................................................. 16
2.7 另类风格的makefile....................................................................................................... 17
2.8 清除工作目录过程文件................................................................................................... 18
第三章:Makefile 总述.............................................................................................................. 20
3 Makefile总述........................................................................................................................ 20
3.1 Makefile的内容............................................................................................................... 20
3.2 makefile文件的命名....................................................................................................... 21
3.3 包含其它makefile文件.................................................................................................... 22
3.4 变量MAKEFILES.......................................................................................................... 24
3.5 变量MAKEFILE_LIST.................................................................................................. 26
3.6 其他特殊变量................................................................................................................. 26
3.7 makefile文件的重建....................................................................................................... 27
3.8 重载另外一个makefile.................................................................................................... 28
3.9 make如何解析makefile文件........................................................................................... 30
3.9.1 变量取值.................................................................................................................. 30
3.9.2 条件语句.................................................................................................................. 31
3.9.3 规则的定义............................................................................................................... 31
3.10 总结...............................................................................................................................31
第四章:Makefile的规则............................................................................................................ 33
4 Makefile规则........................................................................................................................ 33
4.1 一个例子........................................................................................................................ 33
4.2 规则语法........................................................................................................................ 34
4.3 依赖的类型..................................................................................................................... 35
4.4 文件名使用通配符.......................................................................................................... 36
4.4.1 统配符使用举例........................................................................................................ 37
4.4.2 通配符存在的缺陷.................................................................................................... 38
4.4.3 函数wildcard............................................................................................................ 38
4.5 目录搜寻........................................................................................................................ 39
4.5.1 一般搜索(变量VPATH)........................................................................................ 39
4.5.2 选择性搜索(关键字vpath).................................................................................... 40
4.5.3 目录搜索的机制........................................................................................................ 41
4.5.4 命令行和搜索目录.................................................................................................... 44
4.5.5 隐含规则和搜索目录................................................................................................. 44
4.5.6 库文件和搜索目录.................................................................................................... 45
4.6 Makefile伪目标............................................................................................................... 46
4.7 强制目标(没有命令或依赖的规则)............................................................................. 50
4.8 空目标文件..................................................................................................................... 50
4.9 Makefile的特殊目标....................................................................................................... 51
4.10 多目标............................................................................................................................ 54
4.11 多规则目标..................................................................................................................... 55
4.12 静态模式........................................................................................................................ 56
4.12.1 静态模式规则的语法....................................................................................... 56
4.12.2 静态模式和隐含规则....................................................................................... 58
4.13 双冒号规则..................................................................................................................... 59
4.14 自动产生依赖................................................................................................................. 60
第五章:规则的命令.................................................................................................................. 63
5 为规则书写命令................................................................................................................... 63
5.1 命令回显........................................................................................................................ 63
5.2 命令的执行..................................................................................................................... 64
5.3 并发执行命令................................................................................................................. 65
5.4 命令执行的错误.............................................................................................................. 67
5.5 中断make的执行............................................................................................................ 68
5.6 make的递归执行............................................................................................................ 69
5.6.1 变量MAKE............................................................................................................... 70
5.6.2 变量和递归............................................................................................................... 71
5.6.3 命令行选项和递归.................................................................................................... 75
5.6.4 -w选项...................................................................................................................... 77
5.7 定义命令包..................................................................................................................... 78
5.8 空命令............................................................................................................................ 80
第六章:Makefile中的变量......................................................................................................... 81
6 使用变量.............................................................................................................................. 81
6.1 变量的引用..................................................................................................................... 82
6.2 两种变量定义(赋值)................................................................................................... 83
6.2.1 递归展开式变量........................................................................................................ 83
6.2.2 直接展开式变量........................................................................................................ 85
6.2.3 定义一个空格........................................................................................................... 86
6.2.4 “?=”操作符............................................................................................................. 87
6.3 变量的高级用法.............................................................................................................. 88
6.3.1 变量的替换引用........................................................................................................ 88
6.3.2 变量的套嵌引用........................................................................................................ 88
6.4 变量取值........................................................................................................................ 92
6.5 如何设置变量................................................................................................................. 93
6.6 追加变量值..................................................................................................................... 94
6.7 override 指示符............................................................................................................. 96
6.8 多行定义........................................................................................................................ 98
6.9 系统环境变量................................................................................................................. 99
6.10 目标指定变量............................................................................................................... 101
6.11 模式指定变量............................................................................................................... 103
第七章:Makefile的条件执行................................................................................................... 104
7 Makefile的条件判断........................................................................................................... 104
7.1 一个例子...................................................................................................................... 104
7.2 条件判断的基本语法.................................................................................................... 105
7.3 标记测试的条件语句.................................................................................................... 108
第八章:make的内嵌函数........................................................................................................ 109
8 make的函数....................................................................................................................... 109、
8.1 函数的调用语法............................................................................................................ 109
8.2 文本处理函数............................................................................................................... 110
8.2.1 $(subst FROM,TO,TEXT)..................................................................................... 110
8.2.2 $(patsubst PATTERN,REPLACEMENT,TEXT)................................................... 110
8.2.3 $(strip STRINT)..................................................................................................... 112
8.2.4 $(findstring FIND,IN)............................................................................................ 112
8.2.5 $(filter PATTERN…,TEXT)................................................................................... 112
8.2.6 $(filter-out PATTERN...,TEXT)............................................................................. 113
8.2.7 $(sort LIST)........................................................................................................... 113
8.2.8 $(word N,TEXT).................................................................................................... 114
8.2.9 $(wordlist S,E,TEXT)............................................................................................ 114
8.2.10 $(words TEXT)............................................................................................ 114
8.2.11 $(firstword NAMES…)................................................................................ 115
8.3 文件名处理函数............................................................................................................ 115
8.3.1 $(dir NAMES…).................................................................................................... 115
8.3.2 $(notdir NAMES…)............................................................................................... 116
8.3.3 $(suffix NAMES…)............................................................................................... 116
8.3.4 $(basename NAMES…)....................................................................................... 117
8.3.5 $(addsuffix SUFFIX,NAMES…)........................................................................... 117
8.3.6 $(addprefix PREFIX,NAMES…)........................................................................... 118
8.3.7 $(join LIST1,LIST2)............................................................................................... 118
8.3.8 $(wildcard PATTERN).......................................................................................... 119
8.4 foreach 函数................................................................................................................ 119
8.5 if 函数.......................................................................................................................... 120
8.6 call函数........................................................................................................................ 121
8.7 value函数..................................................................................................................... 123
8.8 eval函数....................................................................................................................... 124
8.9 origin函数..................................................................................................................... 125
8.10 shell函数...................................................................................................................... 127
8.11 make的控制函数.......................................................................................................... 128
8.11.1 $(error TEXT…)........................................................................................... 128
8.11.2 $(warning TEXT…)...................................................................................... 129
第九章:执行make.................................................................................................................. 130
9 执行make.......................................................................................................................... 130
9.1 指定makefile文件......................................................................................................... 130
9.2 指定终极目标............................................................................................................... 131
9.3 替代命令的执行............................................................................................................ 133
9.4 防止特定文件重建........................................................................................................ 135
9.5 替换变量定义............................................................................................................... 136
9.6 使用make进行编译测试............................................................................................... 137
9.7Tmake的命令行选项.................................................................................................... 138
第十章:make的隐含规则........................................................................................................ 143
10 使用隐含规则............................................................................................................... 143
10.1 隐含规则的使用............................................................................................................ 143
10.2 make的隐含规则一览................................................................................................... 145
10.3 隐含变量...................................................................................................................... 148
10.3.1 代表命令的变量............................................................................................ 149
10.3.2 命令参数的变量............................................................................................ 150
10.4 make隐含规则链.......................................................................................................... 151
10.5 模式规则...................................................................................................................... 153
10.5.1 模式规则介绍................................................................................................ 153
10.5.2 模式规则示例................................................................................................ 155
10.5.3 自动化变量.................................................................................................... 156
T10.5.4T模式的匹配................................................................................................. 159
10.5.5 万用规则....................................................................................................... 160
10.5.6 重建内嵌隐含规则......................................................................................... 161
10.6 缺省规则...................................................................................................................... 162
10.7 后缀规则...................................................................................................................... 162
10.8 隐含规则搜索算法........................................................................................................ 164
第十一章:使用make更新静态库文件...................................................................................... 166
11 更新静态库文件............................................................................................................ 166
11.1 库成员作为目标............................................................................................................ 166
11.2 静态库的更新............................................................................................................... 167
11.2.1 更新静态库的符号索引表.............................................................................. 168
11.3 make静态库的注意事项............................................................................................... 168
11.4 静态库的后缀规则........................................................................................................ 169
第十二章 :GNU make的特点............................................................................................... 170
12 GNU make的一些特点................................................................................................. 170
12.1 源自System v的特点.................................................................................................... 170
12.2 源自其他版本的特点.................................................................................................... 171
12.3 GNU make自身的特点................................................................................................. 172
第十三章 和其它版本的兼容.................................................................................................... 174
13 不兼容性...................................................................................................................... 174
第十四章Makefile的约定........................................................................................................ 176
14 书写约定...................................................................................................................... 176
14.1 基本的约定................................................................................................................... 176
14.2 规则命令行的约定........................................................................................................ 178
14.3 代表命令变量............................................................................................................... 179
14.4 安装目录变量............................................................................................................... 180
14.5 Makefile的标准目标名.................................................................................................. 185
14.6 安装命令分类............................................................................................................... 190
第十五章make的常见错误信息............................................................................................... 193
15 make产生的错误信息................................................................................................... 193
附录1:关键字索引.................................................................................................................. 196
GNU make可识别的指示符:.............................................................................................. 196
GNU make函数:............................................................................................................... 197
GNU make的自动化变量..................................................................................................... 197
GNU make环境变量............................................................................................................ 198
后序......................................................................................................................................... 198
下载该资料的人也在下载
下载该资料的人还在阅读
更多 >
- 入门MakeFile学习手册 0次下载
- 跟我一起写Makefile(PDF重制版)陈皓著 0次下载
- 嵌入式中的Makefile应用
- openwrt下面创建package之Makefile模版 0次下载
- 跟我一起学Makefile电子教材分享 2次下载
- C语言教程之Makefile基础的详细资料说明 10次下载
- WorkVisual的安装和操作学习手册免费下载 25次下载
- Makefile是什么?Makefile工作原理是怎样的?Makefile经典教程免费下载 0次下载
- Linux内核Makefile文件 14次下载
- makefile教程(中文版) 0次下载
- 驾驭makefile 9次下载
- 跟我一起学makefile 0次下载
- 驾驭Makefile 9次下载
- makefile学习指导 0次下载
- Makefile中文教程 -下载
- HighTec Tricore编译速度优化策略探讨 1091次阅读
- 什么是makefile?为什么需要用makefile? 422次阅读
- Makefile可以做什么?Makefile的基本格式 515次阅读
- 全面而详细的Makefile使用手册 627次阅读
- Linux下如何使用CMake编译程序 1174次阅读
- 三个Makefile模板分享 812次阅读
- Linux 下的make 工具和 Makefile 859次阅读
- 什么是Makefile? 4086次阅读
- 如何编写适用于Go项目的Makefile 2074次阅读
- 虚拟机:Linux的Makefile使用for编译多个目标文件 4413次阅读
- 学习电子应该学习什么?学习的顺序应该是怎么样的 9221次阅读
- Linux关于Makefile的用法介绍 1841次阅读
- 嵌入式系统Kconfig .config Makefile的联系和区别 5517次阅读
- 用Makefile模拟一个的wlm并实现并行任务分发 847次阅读
- 如何区分深度学习与机器学习 1891次阅读
下载排行
本周
- 1XL4015+LM358恒压恒流电路图
- 0.38 MB | 137次下载 | 1 积分
- 2PCB布线和布局电路设计规则
- 0.40 MB | 4次下载 | 免费
- 3TPS6287B25降压转换器评估模块
- 3.46MB | 1次下载 | 免费
- 4INA226EVM用户指南
- 4.7MB | 1次下载 | 免费
- 5INA226EVM修订版A模型用户指南和软件教程
- 2.28MB | 1次下载 | 免费
- 6Altium Designer印刷电路板设计与制作PDF电子书免费下载
- 14.11 MB | 0次下载 | 3 积分
- 7DLPC3470和DLPC3478软件编程人员指南
- 1.68MB | 次下载 | 免费
- 8TPS1213-Q1智能高侧驱动器评估模块
- 1.63MB | 次下载 | 免费
本月
- 1XL4015+LM358恒压恒流电路图
- 0.38 MB | 137次下载 | 1 积分
- 2新概念模拟电路第四册信号处理电路电子书免费下载
- 10.69 MB | 60次下载 | 免费
- 3800VA纯正弦波逆变器的参考设计
- 2.96MB | 34次下载 | 免费
- 4纯电动汽⻋的主要部件及⼯作原理
- 5.76 MB | 15次下载 | 5 积分
- 5JESD79-5C_v1.30-2024 内存技术规范
- 2.71 MB | 10次下载 | 免费
- 6elmo直线电机驱动调试细则
- 4.76 MB | 9次下载 | 6 积分
- 7明伟电源模块RSP-3000图纸
- 0.30 MB | 8次下载 | 免费
- 8使用BQ76PL102系列电量计进行BQ78PL114的快速入门指南
- 4.04MB | 7次下载 | 免费
总榜
- 1matlab软件下载入口
- 未知 | 935115次下载 | 10 积分
- 2开源硬件-PMP21529.1-4 开关降压/升压双向直流/直流转换器 PCB layout 设计
- 1.48MB | 420061次下载 | 10 积分
- 3Altium DXP2002下载入口
- 未知 | 233084次下载 | 10 积分
- 4电路仿真软件multisim 10.0免费下载
- 340992 | 191366次下载 | 10 积分
- 5十天学会AVR单片机与C语言视频教程 下载
- 158M | 183329次下载 | 10 积分
- 6labview8.5下载
- 未知 | 81581次下载 | 10 积分
- 7Keil工具MDK-Arm免费下载
- 0.02 MB | 73805次下载 | 10 积分
- 8LabVIEW 8.6下载
- 未知 | 65985次下载 | 10 积分
评论
查看更多