GCC est une abréviation de GNU Compiler Collection, un compilateur C pour Linux.
$ gcc [options] [source files] [object files] [-o output file]
Options principales de GCC:
option | la description |
---|---|
gcc -c | compiler les fichiers source en fichiers objet sans liaison |
gcc -Dname[=value] | définir une macro de préprocesseur |
gcc -fPIC | générer du code indépendant de la position pour les bibliothèques partagées |
gcc -glevel | générer des informations de débogage à utiliser par GDB |
gcc -Idir | ajouter le répertoire d'inclusion des fichiers d'en-tête |
gcc -llib | lien avec le fichier de bibliothèque |
gcc -Ldir | rechercher dans le répertoire les fichiers de bibliothèque |
gcc -o output file | écrire la sortie de construction dans le fichier de sortie |
gcc -Olevel | optimiser la taille du code et le temps d'exécution |
gcc -shared | générer un fichier objet partagé pour la bibliothèque partagée |
gcc -Uname | annuler la définition d'une macro de préprocesseur |
gcc -w | désactiver tous les messages d'avertissement |
gcc -Wall | activer tous les messages d'avertissement |
gcc -Wextra | activer des messages d'avertissement supplémentaires |
Compilez file1.c et file2.c et créez un lien vers le fichier de sortie execfile :
$ gcc file1.c file2.c -o execfile
Exécutez le fichier de sortie execfile :
$ ./execfile
Compilez file1.c et file2.c sans liaison:
$ gcc -c file1.c file2.c
Compilez myfile.c avec les informations de débogage et créez un lien vers le fichier de sortie execfile :
$ gcc -g myfile.c -o execfile
Compilez myfile.c avec les messages d'avertissement activés et créez un lien vers le fichier de sortie execfile :
$ gcc -Wall myfile.c -o execfile
Compilez myfile.c avec et liez avec la bibliothèque statique libmath.a située dans / user / local / math pour afficher le fichier execfile :
$ gcc -static myfile.c -L/user/local/math -lmath -o execfile
Compilez myfile.c avec optimisation et lien vers le fichier de sortie execfile :
$ gcc -O myfile.c -o execfile