Définition des dépendances dans Makefile

Il est très courant qu'un binaire final dépende de divers fichiers de code source et d'en-tête source. Les dépendances sont importantes car elles laissentmakeConnu sur la source de n'importe quelle cible. Prenons l'exemple suivant -

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

Ici, nous disons au makeque bonjour dépend des fichiers main.o, factorial.o et hello.o. Par conséquent, chaque fois qu'il y a un changement dans l'un de ces fichiers objets,make prendra des mesures.

En même temps, nous devons dire au makecomment préparer les fichiers .o. Par conséquent, nous devons définir ces dépendances également comme suit -

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