GNU make 3.8 中文手册:Makefile 规则与使用指南
需积分: 44 151 浏览量
更新于2024-07-24
收藏 1.9MB PDF 举报
"GNUmake中文手册,版本3.8,由徐海兵翻译整理,涵盖了从基础到高级的GNU make工具使用指南,包括Makefile的概述、规则、变量、搜索目录等核心概念。"
GNU Make是构建自动化工具,常用于软件开发中的编译和测试过程。该手册详细介绍了如何编写和理解Makefile,这是GNU Make工作的核心。
**第一章:概述**
本章为读者提供了一个关于GNU Make的基本概念和背景,强调了Makefile在软件构建过程中的作用,以及了解Makefile前需要的基础知识。
**第二章:GNU Make介绍**
这一章深入讲解了Makefile的基本结构和组件,包括:
- **Makefile简介**:介绍Makefile的用途和基本构成。
- **Makefile规则**:阐述了规则如何定义目标文件和依赖文件,以及如何指定执行的命令。
- **简单的示例**:通过实际例子展示Makefile的工作原理。
- **make如何工作**:解释了make如何读取、解析Makefile并决定执行哪些命令。
- **指定变量**:讨论了如何在Makefile中定义和使用变量。
- **自动推导规则**:介绍了make如何自动推断某些类型的文件生成过程。
- **另类风格的makefile**:展示了不同的Makefile编写风格。
- **清除工作目录过程文件**:讲解如何设置清理目标来删除中间或临时文件。
**第三章:Makefile总述**
此章全面阐述了Makefile的各个方面:
- **Makefile的内容**:包括Makefile可以包含的指令和信息。
- **makefile文件的命名**:如何指定Makefile文件的位置和名称。
- **包含其它makefile文件**:说明如何用include命令整合多个Makefile。
- **变量MAKEFILES**:介绍了这个特殊变量的作用。
- **变量MAKEFILE_LIST**:详细解释了该变量记录的Makefile列表。
- **其他特殊变量**:列举了一些重要的预定义变量。
- **makefile文件的重建**:讨论了如何自动重建Makefile。
- **重载另外一个makefile**:描述了如何在运行时改变Makefile。
- **make如何解析makefile文件**:详细解释了解析过程,包括变量取值、条件语句和规则定义。
**第四章:Makefile的规则**
这一章深入探讨了Makefile规则的复杂性和灵活性:
- **规则语法**:规范了规则的基本结构。
- **依赖的类型**:区分了直接依赖和间接依赖。
- **文件名使用通配符**:展示了如何使用通配符匹配一组文件,并讨论了其潜在问题和解决方案。
- **目录搜寻**:详细解释了如何配置VPATH和vpath进行文件搜索。
- **Makefile伪目标**:伪目标是不实际存在的目标,用于控制构建流程。
- **强制目标和空目标文件**:如何定义没有命令或依赖的目标。
- **Makefile的特殊目标**:如`.PHONY`,`.SILENT`等特殊目标的用途。
- **多目标和多规则目标**:允许在一个规则中处理多个目标。
- **静态模式**:静态模式规则提供了更灵活的规则定义方式,可以结合隐含规则使用。
这份手册对于理解和使用GNU Make构建工具是极其宝贵的资源,无论是初学者还是经验丰富的开发者,都能从中获益。它帮助读者掌握构建自动化的核心技巧,从而提高开发效率。
143 浏览量
2008-12-12 上传
2017-11-07 上传
2023-06-27 上传
2023-07-02 上传
2023-08-20 上传
2023-10-26 上传
2023-05-13 上传
2023-07-17 上传
非主流科学家
- 粉丝: 1241
- 资源: 9
最新资源
- 天池大数据比赛:伪造人脸图像检测技术
- ADS1118数据手册中英文版合集
- Laravel 4/5包增强Eloquent模型本地化功能
- UCOSII 2.91版成功移植至STM8L平台
- 蓝色细线风格的PPT鱼骨图设计
- 基于Python的抖音舆情数据可视化分析系统
- C语言双人版游戏设计:别踩白块儿
- 创新色彩搭配的PPT鱼骨图设计展示
- SPICE公共代码库:综合资源管理
- 大气蓝灰配色PPT鱼骨图设计技巧
- 绿色风格四原因分析PPT鱼骨图设计
- 恺撒密码:古老而经典的替换加密技术解析
- C语言超市管理系统课程设计详细解析
- 深入分析:黑色因素的PPT鱼骨图应用
- 创新彩色圆点PPT鱼骨图制作与分析
- C语言课程设计:吃逗游戏源码分享