GNU make 3.8中文手册:嵌入式开发必备
需积分: 9 180 浏览量
更新于2024-11-27
收藏 1.29MB PDF 举报
"GNUmake中文手册 ver-3.8 嵌入式必看"
GNU Make是用于自动化构建系统的工具,特别适用于管理嵌入式系统中的编译过程。该手册的中文版为开发者提供了详细的理解和使用指南。以下是手册内容的概要:
### 第一章:概述
这一章介绍了在使用Make之前需要的基本知识,包括对Makefile的初步理解。它分为以下几个部分:
1.1.1 概述:解释了Make的目的,即自动化编译和链接过程。
1.1.2 准备知识:简要介绍了需要了解的编程和命令行基础。
1.2 GNUmake介绍:详细讲解了GNU Make的功能和特性。
1.2.1 Makefile简介:描述了Makefile的结构和作用。
1.2.2 Makefile规则介绍:解释了规则如何定义目标及其依赖项。
1.2.3 简单示例:通过实例展示了如何编写基本的Makefile。
1.2.4 make如何工作:阐述了make执行Makefile的过程。
1.2.5 指定变量:介绍了如何在Makefile中定义和使用变量。
1.2.6 自动推导规则:说明了Make自动推导目标依赖的规则。
1.2.7 另类风格的makefile:讨论了不同风格的Makefile编写方式。
1.2.8 清除工作目录过程文件:讲解如何设置清理目标以删除编译过程中产生的临时文件。
### 第二章:Makefile总述
本章深入探讨Makefile的各个方面:
2.1 Makefile概述:对Makefile的结构和内容进行了详细说明。
2.2 makefile文件的命名:讨论了Makefile文件的命名约定。
2.3 包含其他makefile文件:解释了如何在一个Makefile中包含其他Makefile以扩展规则。
2.4 变量MAKEFILES:介绍了一个特殊的变量,用于指定额外的Makefile路径。
2.5 变量MAKEFILE_LIST:详细描述了记录所有加载的Makefile的变量。
2.6 其他特殊变量:列举了一些Make预定义的特殊变量。
2.7 makefile文件的重建:讲述了如何在需要时重新构建Makefile。
2.8 重载另一个makefile:说明了如何在运行时改变Make的目标Makefile。
2.9 make如何解析makefile文件:解析过程包括变量取值、条件语句和规则定义。
2.10 总结:对本章内容做了扼要总结。
### 第三章:Makefile的规则
本章专注于Makefile的核心元素——规则:
3.1 一个例子:通过一个实际的规则示例来说明其工作原理。
3.2 规则语法:详细阐述了规则的语法结构。
3.3 依赖的类型:解释了目标可以依赖于的各种类型。
3.4 文件名使用通配符:介绍了如何使用通配符匹配多个文件。
3.4.1 统配符使用举例:给出了通配符在Makefile中的应用。
3.4.2 通配符存在的缺陷:讨论了使用通配符可能导致的问题。
3.4.3 函数wildcard:提到了一个用于获取匹配通配符的文件列表的内置函数。
3.5 目录搜寻:说明了如何让Make在多个目录中查找依赖文件。
3.5.1 一般搜索(变量VPATH):使用VPATH变量进行全局目录搜索。
3.5.2 选择性搜索(关键字vpath):介绍了局部目录搜索的设置方法。
3.5.3 目录搜索的机制:详细描述了Make的搜索流程。
3.5.4 命令行和搜索目录:如何在命令行中指定额外的搜索路径。
3.5.5 隐含规则和搜索目录:隐含规则如何与目录搜索结合。
3.5.6 库文件和搜索目录:库文件的处理方式与目录搜索的关系。
3.6 Makefile伪目标:讲解了如clean这样的特殊目标,它们不对应任何物理文件。
3.7 强制目标:没有命令或依赖的规则,用于更新目标。
3.8 空目标文件:用于确保命令执行,即使没有文件更改。
3.9 Makefile的特殊目标:如PHONY、.SUFFIXES等特殊目标的用法。
3.10 多目标:一个规则可以更新多个目标。
3.11 多规则目标:多个规则指向同一个目标的情况。
3.12 静态模式:一种更灵活的规则表示方式,可减少重复代码。
3.12.1 静态模式规则的语法:描述了静态模式规则的写作规则。
这个手册对于学习和精通GNU Make,特别是对于在嵌入式开发环境中使用Make构建系统的人来说,是一份非常有价值的参考资料。通过深入理解和实践手册中的内容,开发者能够有效地管理和自动化他们的构建过程。
105 浏览量
377 浏览量
192 浏览量
311 浏览量
186 浏览量
160 浏览量
372 浏览量
1598 浏览量
193 浏览量

gflytu
- 粉丝: 191
最新资源
- 壮志凌云EP3.5服务器版rar压缩包发布
- 快消品行业主题设计:美味冰激凌PPT模板
- 孙晓云编著Labwindows CVI编程例程集锦
- 情人节快乐:为爱人制作的简单JavaScript应用
- 掌握文件差异比较技巧,优化日常工作效率
- Python脚本:从Twitter推文中提取用户位置信息
- 86logistics.vn扩展程序:轻松订购中国电商平台商品
- SRS项目工程与场景配置文件解析
- 实现自动模拟登录百度V3版的源码解析
- 新春必备PPT模板:恭贺春节设计应用
- 快速隐藏窗口工具QuickHiderV 2.12体验分享
- 诺基亚手册深度解析:电信行业的机器学习与编程实践
- 基于Struts和Hibernate的个人登录管理系统
- TicGit-ng:基于Git的简易票务系统
- WinSock和I/O完成端口的简单应用实现
- 全新汉化版.NET WYSIWYG HTML可视化编辑器发布