linux - 使用make构建后的.d文件是什么

有时,我会为给定的源文件找到 .d 文件。 例如,如果我编译 test.c,我有

test.d, test.o

我知道 test.o 是目标文件,但不知道 test.d 是干什么用的。 能否给点提示或指点?

最佳答案

许多构建系统将自动检测到的 make 依赖项添加到 .d 文件中。特别是,对于 C/C++ 源文件,它们确定需要哪些 #include 文件并自动将这些信息生成到 .d 文件中。

.d 文件随后包含在 makefile 中,因此 make 知道该信息。如果您查看这些文件的内容,它们将成为先决条件语句,例如:

foo.o : foo.h bar.h biz.h

等等

https://stackoverflow.com/questions/19114410/

相关文章:

java - eclipse 中 "Build Automatically"选项的用途

java - 项目的 POM 丢失,没有可用的依赖信息

Xcode - 如何查看构建命令和日志?

ios - Xcode 8 无法存档 "Command/usr/bin/codesign faile

c# - 如何强制 VS 2010 跳过未更改的项目的 "builds"?

.net - 复制本地如何工作? log4net.dll 没有被复制到 MyProject 输出目录

java - Maven 编译器插件总是将一组源检测为 "stale"

java - 如何在命令行中编译多个java源文件

ios - React-native:如何从 Windows 构建 ios

macos - xcode4:链接器错误:找不到选项的目录