多规则目标详解:MapGIS 10教程
需积分: 44 178 浏览量
更新于2024-08-10
收藏 2.1MB PDF 举报
本教程主要讲解的是Makefile中的"多规则目标"概念,这是在高级Makefile编写中一个重要的特性。在Makefile中,一个文件可以作为多个规则的目标,这意味着如果有多个规则指向同一个目标,它们都会共享同一依赖文件列表。当任何依赖文件更新时,make会根据最后一条规则中的指令来重建目标,除非目标文件名以"."开头,这种情况下可以有多条重建命令。
多规则目标的一个显著优势在于其灵活性。通过这种方式,你可以定义一个变量,如"objects",列出所有需要编译的.o文件,并且当这些.o文件的依赖,如头文件"config.h"发生改变时,无需改动原有的Makefile规则,只需调整头文件的依赖即可。这在大型项目中尤为有用,因为可以保持Makefile的简洁,只在需要的地方添加或删除规则,而不必频繁更新整个文件。
此外,Makefile允许通过变量增加目标的依赖文件,或者利用make命令行动态指定依赖。关于依赖关系的描述规则,还可以利用GCC的自动依赖生成功能,以减少手动维护的工作量。
"多规则目标"部分也涉及到了一些特殊情况,例如使用"双冒号"规则来处理需要不同重建命令的情况,以及在某些GNU make版本中,尽管不推荐,但仍然支持以"."开头的目标文件有多个重建命令的特性和与旧版make的兼容性。
理解并熟练运用多规则目标可以使Makefile的组织更为有序和高效,对于大型项目的构建流程优化具有重要意义。在实际操作中,要确保规则的清晰,避免冲突,并充分利用Makefile的内置功能,以便于自动化和维护。
104 浏览量
126 浏览量
243 浏览量
点击了解资源详情
点击了解资源详情
点击了解资源详情
点击了解资源详情
点击了解资源详情
点击了解资源详情
Fesgrome
- 粉丝: 37
- 资源: 3810
最新资源
- conekta-api:Conekta 的 Node.js REST 服务的完整 API
- reto-1_coach-rafael
- msf_gif:单头动画GIF导出器
- NodeJs-Jobs-Website:由NodeJs开发的Jobs网站
- 【ssm项目源码】学校教务管理系统.zip
- Knowledge_Graph_Exchange_Registry:生物医学数据转换器联盟站点,用于开发知识图交换标准和注册表
- subclass-dance-party
- Netsso LoginPilot-crx插件
- cordova-plugin-paypalmpl:用于 PayPal MPL 库的 Cordova 插件,不适用于新的 SDK
- GANPPBO:将GANSpace和投影优先贝叶斯优化技术相结合的研究项目,用于在生成的图像中对用户偏好进行建模
- MT6771 P60 _LTE-A_Smartphone_Application_Processor_Functional_Specification.rar
- 网络游戏-基于遗传算法和概率神经网络的远程摔倒检测方法及系统.zip
- fitness-tracker2
- DAB_BERTRAND_Louis_3D_TR_SCIFI:基于模块化设计的SCI FI项目是统一进行的
- jquery-canvasspinner:一个 HTML5 基于加载微调器,带有 .gif 回退
- reghdfe:具有任意数量的固定效应的线性,IV和GMM回归