« Autotools en C/Programme exemple » : différence entre les versions

Contenu supprimé Contenu ajouté
Changed "affichage_SOURCE" to "affichage_SOURCES" so when you have multiple source files it doesn't only read the first one.
DannyS712 (discussion | contributions)
m <source> -> <syntaxhighlight> (phab:T237267)
 
Ligne 6 :
 
Notre arborescence pour l'instant :
<sourcesyntaxhighlight lang=bash>
affichage/
src/
</syntaxhighlight>
</source>
 
On crée le fichier source en langage C dans ''src/'' :
<sourcesyntaxhighlight lang=bash>
affichage/
src/
programme.c
</syntaxhighlight>
</source>
 
Et éditons-le pour y placer notre code trivial :
<sourcesyntaxhighlight lang=c>
/* programme.c */
void main()
Ligne 25 :
printf("Bonjour\n");
}
</syntaxhighlight>
</source>
 
==Fichiers de configuration==
Ligne 37 :
Pour cela, il faut se placer dans le répertoire principal ''affichage'' :
 
<sourcesyntaxhighlight lang=bash>
$ cd affichage/
$ autoscan
</syntaxhighlight>
</source>
 
''autoscan'' va générer un fichier ''configure.scan''. Son édition va nous permettre de compléter quelques champs :
 
<sourcesyntaxhighlight lang=Perl>
AC_PREREQ([2.65])
AC_INIT([FULL-PACKAGE-NAME], [VERSION], [BUG-REPORT-ADDRESS])
Ligne 57 :
# Checks for library functions.
AC_OUTPUT
</syntaxhighlight>
</source>
Il sera modifié et complété :
<sourcesyntaxhighlight lang=Perl>
AC_PREREQ([2.65])
AC_INIT(affichage, 0.01, affichage@gnu.org) # remplir ici le nom du programme, version, courriel du développeur
Ligne 76 :
src/Makefile # être parcourue
)
</syntaxhighlight>
</source>
Une fois édité, on le renomme en ''configure.ac''.
Donc à ce stade, l'arborescence doit être :
<sourcesyntaxhighlight lang=bash>
affichage/
configure.ac
src/
programme.c
</syntaxhighlight>
</source>
 
===Makefile.am===
Ligne 90 :
 
On ajoute un ''Makefile.am'' :
<sourcesyntaxhighlight lang=bash>
affichage/
configure.ac
Ligne 96 :
src/
programme.c
</syntaxhighlight>
</source>
 
Dans lequel on place ce contenu :
<sourcesyntaxhighlight lang=Perl>
SUBDIRS=src
</syntaxhighlight>
</source>
 
Et on en crée un deuxième :
 
<sourcesyntaxhighlight lang=bash>
affichage/
configure.ac
Ligne 112 :
Makefile.am
programme.c
</syntaxhighlight>
</source>
 
Dans lequel on va écrire :
<sourcesyntaxhighlight lang="Perl">
bin_PROGRAMS=affichage
affichage_SOURCES=programme.c
</syntaxhighlight>
</source>
 
===README===
Ligne 131 :
Ce script (disponible [http://freecode.com/projects/buildconf ici]) va nous permettre de simplifier la construction, car il réalise toutes les opérations nécessaires de manière automatique.
Même si tout est automatique, il faut quand même savoir que ce script lance plusieurs commandes différentes dont :
<sourcesyntaxhighlight lang=bash>
$ aclocal
$ autoconf
$ autoheader
$ automake
</syntaxhighlight>
</source>
 
Il faut noter qu'après ce lancement certains fichiers seront créés dont INSTALL, AUTHORS (vide : à compléter), ChangeLog (vide aussi), NOTES (vide), TODO (vide). Encore une fois, maintenir ces fichiers n'est pas difficile et toujours profitable aux utilisateurs.
 
<sourcesyntaxhighlight lang=bash>
affichage/
autogen.sh
Ligne 149 :
Makefile.am
programme.c
</syntaxhighlight>
</source>
Maintenant que tout est prêt, lançons le script :
<sourcesyntaxhighlight lang=bash>
$ ./autogen.sh
</syntaxhighlight>
</source>
 
===LICENSE===