Semestre 7‎ > ‎ISS7AB - SE1‎ > ‎

TD outils de build


L'objectif est d'apprendre à écrire un fichier Makefile. 
À partir des sources fibonacci.h, fibonacci.c et main.c, nous allons écrire un Makefile générique qui pourra être réutilisé dans d'autres projets.

1.    Créer un répertoire projet.

2.    Écrire le Makefile permettant de :
  • compiler nettoyer
  • et tester le programme.
3.    Modifier votre Makefile pour utiliser les variables CC, CFLAGS et éventuellement LDFLAGS.

4.     Remplacer les deux règles utilisant les mêmes commandes par une seule règle générique.

5.     Il est possible de lister les fichiers sources et de remplacer l'extension de chaque élément de la liste avec OBJ := $(SRC:.c=.o)
  • Vous pouvez aussi générer une liste de fichier présent dans votre répertoire avec la commande SRC := $(wildcard *.c)
  • Ajouter les deux dernière fonctionnalités à votre Makefile
6.     Nous souhaitons compiler notre projet soit en mode debug, soit en mode release.
  • Créer une variable DEBUG et tester sa valeur pour changer de mode (pensez aux directives ifeq, else et endif).
7.     Le fichier fibonacci.asm est une version en assembleur i386 du programme fibonacci. Adapter le Makefile de sorte à pouvoir choisir entre les deux versions par une variable.

8.     Maintenant, nous voudrons mettre chaque version dans un sous-répertoire, avoir un Makefile pour chaque version et un Makefile maître. Il est possible d'appeler un Makefile depuis un autre Makefile grâce à la variable $(MAKE).
  • Indication : @(cd $(C_DIR) && $(MAKE))

Arduino

Etudiez et utilisez le Makefile ci-dessous pour compiler et flasher le programme led.c sur un arduino

ċ
Makefile
(2k)
Pierre-Etienne Moreau,
15 sept. 2015 à 10:57
Comments