Makefile的两条关键规则
来源:互联网 发布:php2017行情知乎 编辑:程序博客网 时间:2024/06/04 19:42
假如有Makefile如下:
- A: B
- cmd groups one
- B: C
- cmd groups two
- A: D
- 一个目标,可以定义多次依赖关系,但只能定义一次构建命令组(cmd groups)。
A的依赖关系分别在(1)、(5)行,定义了两次。但A的构建命令组,只在(2)处进了定义(命令组可以有多行,这里(2)行只是抽象表示)。由于make程序里,会为每个目标建立一张一对多的依赖关系表,所以可以多次定义依赖关系。
但cmd groups只应定义一次---既然是cmd groups,即可在这个groups中放多个命令,故没有必要定义多次。若允许定义多次,其执行次序受依赖关系的影响而出现不可控,会滋生众多问题,这也许是make禁用此方式的原因。
若A比B新,make A命令仍然会检查B的依赖(因为make并不是首先检查A与B的时间关系,而是先递归检查B的依赖),即执行(3)行的检查,若B比C新(C已经没有依赖,不再递归检查),会执行cmd groups two。执行完后返回到(1),发现A比B新,就不会执行cmd groups one了。
- Makefile的两条关键规则
- 模板函数需要注意的两条重载规则
- makefile的规则
- Makefile 的书写规则
- Makefile的规则
- makefile的规则
- Makefile 的规则
- Makefile文件的规则
- makefile的隐含规则
- Makefile的规则
- 一、Makefile的规则
- makefile的编译规则
- makefile的书写规则
- Makefile的规则
- Makefile的基本规则
- 关于makefile的规则
- makefile目标的规则
- makefile的使用规则
- CSS hack:区分IE6,IE7,firefox
- 基于svnserve的服务器,权限文件authz配置的常见问题及解答
- 3.6版已修改文件列表
- xsl:choose, xsl:when 和 xsl:otherwise
- Java编程那些事儿63—多态性
- Makefile的两条关键规则
- 写好函数的几个要点
- QT在S3CXX平台的移植。
- MVC
- osworkflow简单教程
- ASP.net 对XML文件的操作
- VC6.0图形处理技术和文字处理技术
- Linux系统服务
- 关于2个窗体间的传值问题