GNUmakefile详解:源文件与.d依赖关系
需积分: 12 11 浏览量
更新于2024-08-07
收藏 2.02MB PDF 举报
"这篇文档主要讨论了`makefile`文件的使用,特别是关于文件的重建和包含其他Makefile的细节。文档提到了如何利用变量和转换函数在Makefile中自动处理`.c`源文件生成对应的`.d`依赖文件,并强调了`include`指令的正确使用顺序,以避免`.d`文件中的规则与终极目标冲突。此外,文档还引用了`GNUmake中文手册`,涵盖了`make`的基本概念、规则和变量等内容。"
在`Makefile`中,`sources`变量被用来存储当前目录下的源文件,如`foo.c`和`bar.c`。通过使用变量的转换功能`$(sources : .c=.d)`,可以自动化地创建与`.c`文件相对应的`.d`依赖文件。`.d`文件通常包含了源文件的依赖信息,使得`make`工具能够跟踪文件的改动。`include`指令用于将这些`.d`文件包含进Makefile,使得`make`在执行时能够读取它们并根据需要重建目标。
`include`指令的位置至关重要,因为它决定了`.d`文件中的规则何时生效。正确的做法是将其放在终极目标之后,防止`.d`文件中的规则被误用为Makefile的最终规则。这一概念在文档的3.7节`makefile文件的重建`和3.3节`包含其他Makefile`中有详细讨论。
`GNUmake中文手册`提供了一个全面的指南,包括了Makefile的结构、规则、变量的设置和使用、自动规则推导、清除工作目录的方法,以及如何处理包含和其他Makefile文件的细节。手册还深入讲解了`make`解析Makefile的过程,包括变量取值、条件语句和规则定义等。
在Makefile的规则部分,文档强调了规则的语法、依赖类型、通配符的使用(及其潜在问题)、目录搜索机制,以及静态模式规则的运用。这些内容帮助用户更好地编写和管理Makefile,确保构建过程的高效和准确。
这份文档提供了关于`makefile`文件的深入理解,尤其是对于如何利用变量和规则处理源代码依赖,以及`make`工具的工作原理,对于软件开发人员和系统管理员来说是非常宝贵的参考资料。
2019-09-04 上传
2021-05-27 上传
2018-08-31 上传
点击了解资源详情
点击了解资源详情
点击了解资源详情
点击了解资源详情
点击了解资源详情
点击了解资源详情
一土水丰色今口
- 粉丝: 23
- 资源: 3953
最新资源
- Lubbock Online Popup Blocker-crx插件
- Ola-Mundo:Git e Git-Hub的Primeiro存储库
- Kurssi2102:Esimerkkejä
- ProNoteMoyianeGeomonique:厌倦了非代表性的ProNotes平均值? 我也是
- Android-Bluetooth-Library:安卓蓝牙库
- restart::counterclockwise_arrows_button:在视线时,无意识的传教士和无意识的传教士应运而生。:counterclockwise_arrows_button::counterclockwise_arrows_button::counterclockwise_arrows_button::counterclockwise_arrows_button::counterclockwise_arrows_button::counterclockwise_arrows_butto
- chat_app
- 药水:用于从TIND获取数据的简单Python对象
- 参考资料-78m跨度预应力混凝土刚架结构设计与施工.zip
- kaXiu
- mongodb:mongodb可视化工具
- 数据库快速设计工具.zip
- 单子
- javastream
- 图像处理大作业项目完成.rar
- 对最近用于细粒度车辆分类的深度学习架构的系统评估