La présentation est en train de télécharger. S'il vous plaît, attendez

La présentation est en train de télécharger. S'il vous plaît, attendez

Make 1 Les besoins 2 Définition 3 Makefile 4 Optimisation 5 Exemple de Makefile 6 Prototype 7 Autres outils © BTS II 2002 [tv]

Présentations similaires


Présentation au sujet: "Make 1 Les besoins 2 Définition 3 Makefile 4 Optimisation 5 Exemple de Makefile 6 Prototype 7 Autres outils © BTS II 2002 [tv]"— Transcription de la présentation:

1 Make 1 Les besoins 2 Définition 3 Makefile 4 Optimisation 5 Exemple de Makefile 6 Prototype 7 Autres outils © BTS II 2002 [tv]

2 1. Les besoins ● Compilation séparée automatisée ● Optimisation du temps et des ressources : ne compiler que le nécessaire Lorsque le programme est composé de plusieurs modules ou fichiers :

3 2. Définition Make permet notamment l'automatisation de la phase de compilation. Make lance l'exécution du fichier Makefile qui se trouve dans le répertoire courant.

4 3. Makefile Les opérations nécessaires à la compilation de l'application, c'est-à-dire : Makefile est un fichier qui décrit : Les dépendances Les règles à appliquer lorsque les dépendances ne sont plus respectées

5 4. Avantages Assurer la cohérence de l'ensemble de l'application en recompilant seulement les modules qui dépendent d'une modification Permettre un gain de temps considérable Mémoriser les règles de compilation

6 5. Exemple Makefile Utilisation : make make client make clean OBJS = client.o creer_socket.o //on déclare une «variable» client: ${OBJS}//utilisation de la «variable» gcc ${OBJS} -o client client.o:client.c//on indique la dépendance gcc -c client.c//et la commande associée creer_socket.o:creer_socket.c gcc -c creer_socket.c//on utilise obligatoirement une //tabulation clean: rm -f ${OBJS} core

7 6. Prototype #mini prototype pouvant servir de base #On utilise le compilateur gcc CC = gcc CDEBUG = -g INCDIR = -I /usr/include CFLAGS = $(CDEBUG) $(INCDIR) -O MKDEP = -M LIBDIR = -L /usr/lib LIBS = -lpthread DESTDIR = /usr/local OBJ1 = fichier1.o OBJ2 = fichier2.o SRC1 = fichier1.c SRC2 = fichier2.c OBJS = $(OBJ1) $(OBJ2) SRC = $(SRC1) $(SRC2) all : monprog monprog : $(OBJS) $(CC) $(CFLAGS) $(LIBDIR) $(OBJS) $(LIBS) -o $(@) install : all install -d $(DESTDIR) install monprog $(DESTDIR)/bin $(OBJ1) :$(SRC1) $(CC) $(CFLAGS) -c $(SRC1) $(OBJ2) :$(SRC2) $(CC) $(CFLAGS) -c $(SRC2) clean : rm -f core $(OBJS)

8 7. Autres outils gmake autoconf et automake qui permettent de générer des fichiers automatiquement en tenant compte de la plateforme utilisée


Télécharger ppt "Make 1 Les besoins 2 Définition 3 Makefile 4 Optimisation 5 Exemple de Makefile 6 Prototype 7 Autres outils © BTS II 2002 [tv]"

Présentations similaires


Annonces Google