扫码一下
查看教程更方便
最终的二进制文件依赖于各种源代码和源头文件是很常见的。 依赖关系很重要,因为它们让 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