Panier  

Aucun produit

Expédition 0,00 €
Total 0,00 €

Commander

Notre équipe à votre service

forum myavr
Question pré-achat ? Besoin de support ?
> Visitez notre forum <

devis
Vous avez besoin d'un devis ?
> Contactez-nous <

courrier
Vous souhaitez commander par courrier ?
> Téléchargez un bon de commande <
Renvoyez le complèté avec votre paiement à :
Devtronic SARL
21 rue Jean-Jacques Rousseau
92150 SURESNES

Modes de paiement

paiement securise par paypal
virement cheque
 

Explications sur le fichier Makefile

Qu'est ce qu'un Makefile ?

Le compilateur C pour AVR que nous utilisons est le célèbre compilateur GNU GCC. Ce compilateur est basé sur la commande make qui sert à automatiser les différentes phases du processus de génération du fichier binaire (logiciel final) : préprocessing, compilation et édition des liens.

Make est basé sur un fichier de configuration, le fichier Makefile, qui détermine les cibles (fichiers ou autres), leurs dépendances et la façon de les générer (commandes à exécuter.

Pour de plus amples informations sur la commande make, référez-vous à la page wikipedia sur ce sujet : cliquez-ici.

Description du fichier Makefile

Pour comprendre les différentes facettes du fichier Makefile, nous allons décortiquer le fichier Makefile utilisé dans notre exemple de mise en oeuvre de la librairie UART d'AVRlib. Si vous n'avez jamais utilisé de fichier Makefile, nous vous conseillons de repartir de celui-ci.

Définition du microcontrôleur cible, selon votre application vous remplacerez cette valeur en conséquence.

Dans notre exemple, cette ligne déclare le fichier C principal de notre application (sans son extension) que vous remplacerez donc pour chaque projet. Ce type de déclaration séparée n'est pas forcément nécessaire comme nous le verrons ci-dessous mais apporte une meilleure compréhension.

Cette ligne est une des plus importantes, elle définit tous les fichiers C nécessaires à la compilation de notre programme. On retrouve dans cette ligne la variable TRG déclaré précédemment, comme nous le disions, il ne serait donc pas nécessaire de faire la déclaration précédente puisque l'on pourrait mettre directement ici le nom du fichier C.

Globalement, il vous faudra mettre sur cette ligne tous les noms de fichiers C (avec leur extension) dont votre application à besoin (dépendances).

Dans notre fichier Makefile, ces lignes ne sont pas renseignées.
- ASRC : dans cette ligne, listez si vous avez besoin les fichiers contenant des routines ou morceaux de code en assembleur que vous appelez dans vos sources C.
- LIB : il peut arriver que vous ayez répéré à droite ou à gauche des librairies ou fichiers objets déjé compilés ou pré-compilés. Ces fichiers sont à lister.
- INC : inclusions additionnelles.

Comme nous l'avons indiqué plus haut, la commande make sert à automatiser les différentes phases du processus de génération du fichier binaire. Elle fait appel à différents exécutables chargés de chacune des phases de ce processus. Les lignes ci-dessus correspondent aux paramètres passés à ces différents exécutables. Dans l'ordre, ce sont les paramètres pour la phase d'assemblage (si vous avez des fichiers assembleurs), de compilation et de liens.
Normalement vous ne devriez pas avoir à modifier ces lignes, nous ne décrirons donc pas en détails ces lignes.

Cette ligne est spécifique à AVRlib, elle appelle le fichier Makefile de cette librairie pour inclure les dépendances et options nécessaires à son utilisation. Si vous n'utilisez pas la librairie, supprimez cette ligne.

Cette dernière partie du Makefile définit les dépendances des différents fichiers source définit dans la ligne SRC. Notre exemple comprend de nombreuses lignes mais celles-ci ne seront néanmoins appelées que lorsqu'elles sont déclarées dans la ligne SRC.
Selon vos applications, rajoutez les dépendances correspondantes à vos fichiers sources (en général un fichier objet .o = 1 fichier .c +- 1 fichier .h).

Fichier complet

Pour télécharger le fichier Makefile complet cliquez ici (clic droit > enregistrez-sous).