当前位置: 技术问答>linux和unix
Linux Makefile探讨,产生的.d文件是.c文件的依赖?
来源: 互联网 发布时间:2017-02-06
本文导语: Linux Makefile探讨,make编译过程中产生的.d文件是.c文件的依赖是什么意思?.c依赖的内容指什么,为什么要产生该依赖文件。d? | .d dependencies 依赖文件。 是给Makefile用的。内容和Makefile的target...
Linux Makefile探讨,make编译过程中产生的.d文件是.c文件的依赖是什么意思?.c依赖的内容指什么,为什么要产生该依赖文件。d?
|
.d dependencies
依赖文件。
是给Makefile用的。内容和Makefile的target相似:
假设hello.c里有
#include "hello.h"
hello.h里有
#include "foo.h"
#include "bar.h"
gcc -c -MMD hello.c就会产生hello.d
hello.o: hello.c hello.h foo.h bar.h
在Makefile里用-include 进来后
即使hello.c没有修改,即使hello.c没有直接include foo.h bar.h 只要hello.h foo.h bar.h中的任意一个修改都会重新编译hello.c
依赖文件。
是给Makefile用的。内容和Makefile的target相似:
假设hello.c里有
#include "hello.h"
hello.h里有
#include "foo.h"
#include "bar.h"
gcc -c -MMD hello.c就会产生hello.d
hello.o: hello.c hello.h foo.h bar.h
在Makefile里用-include 进来后
即使hello.c没有修改,即使hello.c没有直接include foo.h bar.h 只要hello.h foo.h bar.h中的任意一个修改都会重新编译hello.c
|
打开任意一个。d文件看看就清楚了,就是生成对应的c文件所依赖的头文件等信息,一般没什么用
偶尔遇到头文件包含相关的问题(如文件包含错了、文件包含冲突等),可以分析这个文件来查找原因
偶尔遇到头文件包含相关的问题(如文件包含错了、文件包含冲突等),可以分析这个文件来查找原因