1.makefile 的组成及作用
makefile由一组rule(规则)组成,规则的语法如下:
obj1 obj2 objN: prerequisite1 prerequisite2 prerequisite3 prerequisiteN
(tab) commands
一个规则由三部分组成
- obj 即目标部分。
- 必要条件部分(或者说依赖,即生成目标文件的依赖文件)。
- commands 从必要条件生成obj 需要执行的 命令。
这一组规则会生成一个叫dependency graph 的东西,可以翻译成依存图、依赖链。make 的最终任务就是根据makefie 文件中的规则,来生成这个dependency graph。dependency graph 决定make 是否要更新特定的目标,如果需要则需要执行相应的commands。
2.rule 的分类
- explicit rule
- implicit rule
- suffix rule
- static pattern rule
- pattern rule
可以将make 的rule 分为 explicit rule 和 implicit rule两类。 即具体规则和隐含规则。所谓具体规则,就是讲讲rule 明明白白的写出来,不需要任何的扩展之类的操作。而所谓的隐含规则,则是指ÿ
本文介绍了makefile的组成及作用,重点解析了rule的分类,包括explicit rule、pattern rule、suffix rule和static pattern rule。explicit rule允许不一次性列出所有依赖,增强了可读性;pattern rule使用通配符简化书写,提高适应性;suffix rule是内置规则,在make执行时自动应用;static pattern rule针对特定对象,提供更精确的控制。
最低0.47元/天 解锁文章
1753

被折叠的 条评论
为什么被折叠?



