GNUmake模式规则详解——EMMC参考设计
需积分: 12 28 浏览量
更新于2024-08-07
收藏 2.02MB PDF 举报
"GNUmake中文手册,ver-3.8,翻译整理:徐海兵,2004-09-11"
在GNUmake中,模式规则是一种强大的工具,允许你编写更简洁、更具通用性的Makefile。模式规则主要用于创建一系列相关的目标文件,这些文件与特定的源文件相对应。在模式规则中,目标名包含一个或多个模式字符“%”,这个“%”可以匹配任意非空字符串。这种规则的目的是让make知道如何将一个目标文件的构建过程应用到一组相关的文件上。
例如,模式规则“%.o : %.c”表示所有以“.o”结尾的目标文件都依赖于相应的以“.c”结尾的源文件。这意味着当`.o`文件需要更新时,make会查找相应的`.c`文件进行编译。通过这种方式,模式规则可以简化规则的定义,特别是当你有很多类似的文件对需要处理时。
模式规则的匹配和替换是在make执行时进行的,而不是在读取Makefile时,这意味着“%”的值是在运行时根据实际的目标文件确定的。而在规则中使用变量和函数的展开则是在make读取Makefile时完成的,这与模式规则的处理顺序不同。
此外,Makefile包含多个概念,如变量的使用、自动推导规则、清除工作目录的规则等。变量可以在Makefile中定义,以存储常量或动态计算的值,可以用于简化命令的书写。自动推导规则是make内置的一套规则,可以自动推断源文件和目标文件之间的关系,如从`.c`文件生成`.o`文件。清除规则通常包括清理编译过程中产生的临时文件,以保持工作目录的整洁。
在Makefile中,还可以使用条件语句、包含其他Makefile文件、指定特殊变量等功能,使得Makefile更加灵活和可扩展。比如,可以使用`include`指令包含其他Makefile,以便代码复用和管理。特殊变量如`MAKEFILES`和`MAKEFILE_LIST`则提供了有关当前Makefile环境的信息。
模式规则是GNUmake中一种强大的机制,能够有效地管理和构建项目中的多个文件。通过理解模式规则以及Makefile的其他特性,开发者可以更高效地自动化构建过程,减少重复劳动,并提高开发效率。
103 浏览量
2021-01-17 上传
2019-01-16 上传
点击了解资源详情
点击了解资源详情
点击了解资源详情
点击了解资源详情
点击了解资源详情
点击了解资源详情
一土水丰色今口
- 粉丝: 23
- 资源: 3965
最新资源
- NIST REFPROP问题反馈与解决方案存储库
- 掌握LeetCode习题的系统开源答案
- ctop:实现汉字按首字母拼音分类排序的PHP工具
- 微信小程序课程学习——投资融资类产品说明
- Matlab犯罪模拟器开发:探索《当蛮力失败》犯罪惩罚模型
- Java网上招聘系统实战项目源码及部署教程
- OneSky APIPHP5库:PHP5.1及以上版本的API集成
- 实时监控MySQL导入进度的bash脚本技巧
- 使用MATLAB开发交流电压脉冲生成控制系统
- ESP32安全OTA更新:原生API与WebSocket加密传输
- Sonic-Sharp: 基于《刺猬索尼克》的开源C#游戏引擎
- Java文章发布系统源码及部署教程
- CQUPT Python课程代码资源完整分享
- 易语言实现获取目录尺寸的Scripting.FileSystemObject对象方法
- Excel宾果卡生成器:自定义和打印多张卡片
- 使用HALCON实现图像二维码自动读取与解码