Ce n’est pas le tout de bien fragmenter son code en plusieurs fichiers, encore faut-il les compiler pour obtenir un executable.
La méthode consiste à générer un fichier objet par module (option -c de gcc) :
gcc -O3 -Wall -I. -c module_1.c
gcc -O3 -Wall -I. -c module_2.c
...
gcc -O3 -Wall -I. -c module_n.c
Ces commandes génèrent n fichiers objets module_i.o.
L’option -I de gcc permet d’ajouter un répertoire en première position de la liste des répertoires ou sont cherchés les fichiers en-tête. (ici, le répertoire courant, ./ : l’option -I est donc en fait facultative dans ce cas). Cette option est utile lorsque, pour des raisons de lisibilité dans l’architecture des fichiers sources, un répertoire Include est crée pour contenir tous les fichiers en-tête du programme. La compilation avec gcc comportera alors l’option -IInclude.
Une passe d’édition de lien entre ces fichiers objets en ensuite n´ecessaire pour générer l’exécutable final toto.exe :
gcc -o toto.exe module_1.o module_2.o ... module_n.o
La méthode consiste à générer un fichier objet par module (option -c de gcc) :
gcc -O3 -Wall -I. -c module_1.c
gcc -O3 -Wall -I. -c module_2.c
...
gcc -O3 -Wall -I. -c module_n.c
Ces commandes génèrent n fichiers objets module_i.o.
L’option -I de gcc permet d’ajouter un répertoire en première position de la liste des répertoires ou sont cherchés les fichiers en-tête. (ici, le répertoire courant, ./ : l’option -I est donc en fait facultative dans ce cas). Cette option est utile lorsque, pour des raisons de lisibilité dans l’architecture des fichiers sources, un répertoire Include est crée pour contenir tous les fichiers en-tête du programme. La compilation avec gcc comportera alors l’option -IInclude.
Une passe d’édition de lien entre ces fichiers objets en ensuite n´ecessaire pour générer l’exécutable final toto.exe :
gcc -o toto.exe module_1.o module_2.o ... module_n.o
Jeu 28 Nov - 8:07 par arsenepoutsi
» CCNA version 4 français
Dim 31 Mar - 15:15 par kadhouceeee
» Trés important " Livre exercices en langage C ( claude delannoy) "
Jeu 27 Sep - 16:31 par latifa oustouh
» Ulead VideoStudio 11.5.0157.2 Plus + Crack Collection
Jeu 26 Avr - 9:51 par miloduvi
» Langage IDL(Interface Definition Language)
Mar 27 Sep - 13:02 par Abdelkhalek Bakkari
» demande cours PHP
Jeu 2 Juin - 11:23 par elasriahmed
» exemple page web réaliser avec du html et JavaScript
Lun 30 Mai - 4:05 par ouh.rouchan.zakaria
» cours group2_ 2année 2011
Dim 20 Mar - 15:35 par El Maligno Angelo
» Cours : Infrastructures Réseaux 2003 Server
Mar 15 Fév - 6:55 par jettjackson
» cours officiel de CCNA 2
Mar 18 Jan - 13:53 par agares