GNU Make 特点与历史沿革:SSE4.2与早期版本元素
需积分: 4 145 浏览量
更新于2024-08-09
收藏 4.21MB PDF 举报
本文档详细介绍了GNU make命令集中的各种特性及其历史渊源,主要分为两个部分:源自其他版本的特点和GNU make自身的特色。
1. **源自其他版本的特点**:
- **模式规则与“%”字符**: "%"在多个版本的make中被广泛使用作为模式字符,但确切的起源未明,可参考9.5节的模式规则。
- **规则链和隐含中间文件**: Stu Feldman版本的make引入了规则链和隐含文件的概念,用于AT&T Unix的研究,AT&T贝尔实验室的Andrew Hume在mk程序中进一步发展了这一特性(参考9.4节)。
- **自动化变量`$^`**: 该变量用于包含所有依赖文件列表,虽然不是GNU原创,但来源不明,详情在9.5.3节。
- **"what if"选项**: GNU make的`-W`选项(即"what if"选项)据说由Andrew Hume在mk中首次提出,参阅8.7节。
- **并发执行支持**: 并发执行功能在其他版本的make中存在,但System V和BSD早期版本并未实现,参阅4.3节。
- **模式替换引用和追加操作**: 模式替换引用源自SunOS 4,而`+=`语法也来源于SunOS 4,具体谁先实现难以确定,5.3和5.6节有更多细节。
- **特定语法和操作**: 如命令行的`+`字符、静态库成员列表语法等,都源于不同的操作系统版本,如SunOS 4,参阅相应章节。
2. **GNU make自身的特点**:
- **版本信息和帮助选项**: `make -v`和`make --version`用于显示版本信息,`make -h`或`make --help`提供命令行选项列表。
- **变量和递归调用**: GNU make支持直接展开式变量,5.2节有详细介绍;变量`MAKE`允许在递归调用中传递命令行选项,4.6节对此有所阐述。
- **其他特性**: 如清除过程文件、变量模式替换、`-include`指令(包括多个makefile文件)等,体现了GNU make的灵活性和增强功能。
综上,本文文档提供了深入理解GNU make命令集的实用知识,从其与其他版本的继承和差异,到自身特有的强大功能和使用技巧,为读者构建和管理复杂的Makefile提供了详尽的指南。
2016-09-08 上传
2022-04-11 上传
2021-08-19 上传
点击了解资源详情
点击了解资源详情
点击了解资源详情
点击了解资源详情
点击了解资源详情
点击了解资源详情
李_涛
- 粉丝: 55
- 资源: 3868
最新资源
- SSM动力电池数据管理系统源码及数据库详解
- R语言桑基图绘制与SCI图输入文件代码分析
- Linux下Sakagari Hurricane翻译工作:cpktools的使用教程
- prettybench: 让 Go 基准测试结果更易读
- Python官方文档查询库,提升开发效率与时间节约
- 基于Django的Python就业系统毕设源码
- 高并发下的SpringBoot与Nginx+Redis会话共享解决方案
- 构建问答游戏:Node.js与Express.js实战教程
- MATLAB在旅行商问题中的应用与优化方法研究
- OMAPL138 DSP平台UPP接口编程实践
- 杰克逊维尔非营利地基工程的VMS项目介绍
- 宠物猫企业网站模板PHP源码下载
- 52简易计算器源码解析与下载指南
- 探索Node.js v6.2.1 - 事件驱动的高性能Web服务器环境
- 找回WinSCP密码的神器:winscppasswd工具介绍
- xctools:解析Xcode命令行工具输出的Ruby库