Definición de dependencias en Makefile

Es muy común que un binario final dependa de varios códigos fuente y archivos de encabezado fuente. Las dependencias son importantes porque permitenmakeConocido sobre el origen de cualquier objetivo. Considere el siguiente ejemplo:

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

Aquí te decimos makeese saludo depende de los archivos main.o, factorial.o y hello.o. Por lo tanto, siempre que haya un cambio en cualquiera de estos archivos de objeto,make tomará medidas.

Al mismo tiempo, necesitamos decirle al makecómo preparar archivos .o. Por lo tanto, necesitamos definir esas dependencias también de la siguiente manera:

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