在 Makefile 中定义依赖关系


最终的二进制文件依赖于各种源代码和源头文件是很常见的。依赖关系很重要,因为它们让make知道任何目标的源。考虑以下示例 -

hello: main.o factorial.o hello.o
   $(CC) main.o factorial.o hello.o -o hello

在这里,我们告诉make hello 依赖于 main.o、factorial.o 和 hello.o 文件。因此,只要这些目标文件发生更改,make就会采取行动。

同时,我们需要告诉make如何准备.o文件。因此,我们还需要定义这些依赖关系,如下所示 -

main.o: main.cpp functions.h
   $(CC) -c main.cpp

factorial.o: factorial.cpp functions.h
   $(CC) -c factorial.cpp

hello.o: hello.cpp functions.h
   $(CC) -c hello.cpp