GNU make中文手册:学习与查阅必备
需积分: 36 121 浏览量
更新于2024-09-27
收藏 1.34MB PDF 举报
"GNUmake中文手册,ver-3.81,由徐海兵翻译整理,详细介绍了GNU make的使用,包括Makefile的编写、规则、变量等核心概念。"
GNU `make` 是一个自动化构建工具,它根据Makefile中的规则来编译和链接程序,大大提高了开发效率。这份手册是学习和理解`make`的宝贵资料,适用于开发者和系统管理员。
**第一章:概述**
这一章主要介绍了`make`的基本概念和使用它的前提知识。`make`通过读取Makefile,识别目标和依赖关系,自动执行必要的命令来更新目标文件。`make`的工作方式基于最小化重复劳动的原则,只有当依赖文件比目标文件新时才会执行相应的命令。
**第二章:GNU make介绍**
- **Makefile简介**:Makefile包含了规则,规定了如何从源文件生成目标文件。
- **Makefile规则**:规则由目标、依赖和命令三部分组成,描述了如何从依赖文件生成目标文件。
- **简单的示例**:展示了基本的Makefile结构,如`all:`和`.PHONY`。
- **make如何工作**:解释了`make`如何解析和执行Makefile中的规则。
- **指定变量**:允许用户自定义变量,简化Makefile的书写,如`CC=gcc`。
- **自动推导规则**:`make`内置了一些规则,可以自动推导出编译C/C++代码的命令。
- **另类风格的makefile**:讨论了不同风格的Makefile编写方式。
- **清除工作目录过程文件**:`clean`目标用于清理临时和编译产生的文件。
**第三章:Makefile总述**
- **Makefile的内容**:包括目标、依赖、命令、变量等元素。
- **makefile文件的命名**:通常命名为`Makefile`或`makefile`,但也可以使用其他名字。
- **包含其它makefile文件**:`include`指令允许合并多个Makefile。
- **变量MAKEFILES**:包含当前作用域中所有被包含的Makefile路径。
- **变量MAKEFILE_LIST**:包含所有被读取的Makefile列表。
- **其他特殊变量**:如`SHELL`指定了执行命令时使用的shell。
- **makefile文件的重建**:如何指示`make`去重新构建Makefile自身。
- **重载另一个makefile**:通过`-f`选项指定不同的Makefile。
- **make如何解析makefile文件**:详细解释了解析过程,包括变量赋值、条件语句和规则定义。
**第四章:Makefile的规则**
- **规则语法**:详细阐述了规则的构成和语法。
- **依赖的类型**:包括直接依赖和间接依赖。
- **文件名使用通配符**:`*`、`?`等通配符用于匹配一组文件。
- **目录搜寻**:`VPATH`变量和`vpath`关键字帮助在多个目录中查找文件。
- **Makefile伪目标**:如`.PHONY`,确保命令总是执行,不依赖于同名的物理文件。
- **静态模式规则**:提供了更灵活的规则定义方式,可以同时处理多个文件。
通过这份手册,读者将能够深入理解`make`的工作原理,编写高效、可维护的Makefile,从而优化软件构建流程。无论是初学者还是经验丰富的开发者,都能从中受益。
2011-02-18 上传
2017-07-02 上传
2013-09-17 上传
2022-05-24 上传
2010-12-17 上传
2009-11-29 上传
2019-12-13 上传
nicholas_xiang
- 粉丝: 1
- 资源: 1
最新资源
- 多功能HTML网站模板:手机电脑适配与前端源码
- echarts实战:构建多组与堆叠条形图可视化模板
- openEuler 22.03 LTS专用openssh rpm包安装指南
- H992响应式前端网页模板源码包
- Golang标准库深度解析与实践方案
- C语言版本gRPC框架支持多语言开发教程
- H397响应式前端网站模板源码下载
- 资产配置方案:优化资源与风险管理的关键计划
- PHP宾馆管理系统(毕设)完整项目源码下载
- 中小企业电子发票应用与管理解决方案
- 多设备自适应网页源码模板下载
- 移动端H5模板源码,自适应响应式网页设计
- 探索轻量级可定制软件框架及其Http服务器特性
- Python网站爬虫代码资源压缩包
- iOS App唯一标识符获取方案的策略与实施
- 百度地图SDK2.7开发的找厕所应用源代码分享