GNU Make的特色演变与Unix Makefile发展历程
需积分: 33 101 浏览量
更新于2024-08-09
收藏 2.24MB PDF 举报
本文主要探讨了源自其他版本的Makefile工具的一些关键特性和改进,特别是在胰腺癌患者门静脉系统图像重建的低keV下基于图像的高级虚拟单能双源双能CT数据处理中的应用。以下是一些核心知识点的详细说明:
1. **模式规则**:
- "%"字符在多个Make版本中被用作模式字符,但具体到哪个版本首次引入,文档未明确指出。参考10.5模式规则一节了解其使用。
2. **规则链与隐含中间过程文件**:
- 这个特性首次出现在Stu Feldman的Make版本中,后来在AT&T Bell实验室的Andrew Hume的mk程序中得到应用,可能是“传递闭合”概念的体现,但不确定是否是直接继承。参考10.4隐含规则链一节。
3. **自动化变量$^**:
- 代表规则所有依赖文件的自动化变量不是GNU原创,但具体起源未明。查阅10.5.3自动化变量了解详情。
4. **"what if"选项**:
- GNU Make的-W选项(即命令行的"what if"选项),据说由Andrew Hume在mk中首次引入。参考9.7 make的命令行选项。
5. **并发执行**:
- 并发执行功能在其他版本的Make中支持,但System V和BSD未实现。5.3章节详细讨论了并发执行命令。
6. **变量模式替换引用**:
- 来自SunOS 4的变量模式替换引用功能,GNU Make在SunOS 4实现前通过函数"patsubst"提供。两个版本的实现难以判断谁先提出该概念。
7. **命令行符号"+"</>:
- 在命令行中使用"+"字符有特定含义,这是由IEEE Standard 1003.2-1992(POSIX.2)定义的。
8. **变量追加语法"+="**:
- "+=”用于追加变量值的概念源于SunOS 4版本的Make。
9. **静态库成员作为目标**:
- 使用"ARCHIVE(MEM1 MEM2...)"语法表示静态库成员是SunOS 4 Makefile的特性。
10. **"include"指令**:
- "-include"用于包含多个Makefile文件,即使目标文件不存在也不会报错,这是SunOS 4版本的特性。
11. **Makefile的规则和结构**:
- 文档详细介绍了Makefile的规则定义、依赖类型、通配符使用、目录搜索、伪目标、特殊目标、多目标和静态模式等内容,这些都是理解Makefile编写和使用的基石。
这些特点展示了Makefile工具在不同版本和场景下的发展,尤其是在特定领域的应用,如医学图像处理中的数据重建,强调了Makefile的灵活性和适应性。通过理解这些特性,用户可以更好地利用Makefile来管理和优化复杂的构建过程。
2020-05-25 上传
点击了解资源详情
点击了解资源详情
点击了解资源详情
2020-05-24 上传
2020-06-02 上传
2020-05-23 上传
2021-03-18 上传
龚伟(William)
- 粉丝: 32
- 资源: 3901
最新资源
- MATLAB新功能:Multi-frame ViewRGB制作彩色图阴影
- XKCD Substitutions 3-crx插件:创新的网页文字替换工具
- Python实现8位等离子效果开源项目plasma.py解读
- 维护商店移动应用:基于PhoneGap的移动API应用
- Laravel-Admin的Redis Manager扩展使用教程
- Jekyll代理主题使用指南及文件结构解析
- cPanel中PHP多版本插件的安装与配置指南
- 深入探讨React和Typescript在Alias kopio游戏中的应用
- node.js OSC服务器实现:Gibber消息转换技术解析
- 体验最新升级版的mdbootstrap pro 6.1.0组件库
- 超市盘点过机系统实现与delphi应用
- Boogle: 探索 Python 编程的 Boggle 仿制品
- C++实现的Physics2D简易2D物理模拟
- 傅里叶级数在分数阶微分积分计算中的应用与实现
- Windows Phone与PhoneGap应用隔离存储文件访问方法
- iso8601-interval-recurrence:掌握ISO8601日期范围与重复间隔检查