Différences
Ci-dessous, les différences entre deux révisions de la page.
Les deux révisions précédentesRévision précédente | |||
gcc [Le 04/02/2020, 22:29] – [Liens] 86.234.166.156 | gcc [Le 06/02/2020, 21:38] (Version actuelle) – ancienne révision (Le 04/02/2020, 16:10) restaurée et complété bcag2 | ||
---|---|---|---|
Ligne 1: | Ligne 1: | ||
+ | {{tag> | ||
+ | {{ gcc_logo.png? | ||
+ | ====== GCC, le jeu de compilateurs GNU ====== | ||
+ | |||
+ | GCC (GNU Compiler Collection) est une suite de logiciels libres de compilation. On l' | ||
+ | |||
+ | Le noyau [[Linux]] dépend dans sa compilation des possibilités pointues de son compilateur C. | ||
+ | |||
+ | ===== Installation ===== | ||
+ | |||
+ | Il suffit d' | ||
+ | |||
+ | À noter que lorsque l'on installe le paquet virtuel '' | ||
+ | |||
+ | ==== Installer une autre version (…plus récente) ==== | ||
+ | |||
+ | Si vous ne savez pas quelle version vous voulez installer, vous pouvez exécuter: | ||
+ | < | ||
+ | dpkg -l gcc* | ||
+ | </ | ||
+ | |||
+ | Puis, exécutez, avec les [[: | ||
+ | < | ||
+ | add-apt-repository ppa: | ||
+ | apt-get update | ||
+ | apt-get install gcc-8 g++-8 | ||
+ | update-alternatives --install / | ||
+ | </ | ||
+ | |||
+ | Puis finalement, choisir la version de **'' | ||
+ | < | ||
+ | ===== Utilisation ===== | ||
+ | |||
+ | ==== en C ==== | ||
+ | On peut appeler GCC directement par ligne de commande ou à travers un [[wpfr> | ||
+ | |||
+ | Basiquement, | ||
+ | gcc code.ext -o binaire | ||
+ | en remplaçant bien sûr '' | ||
+ | |||
+ | À noter qu'il faut se trouver dans le dossier où se situe le fichier.c. | ||
+ | |||
+ | ==== en C++ ==== | ||
+ | Utilisation classique : | ||
+ | |||
+ | < | ||
+ | |||
+ | < | ||
+ | |||
+ | -o pour output, permet de définir le fichier de sortie. Si absent, le fichier créé est nommé a.out | ||
+ | |||
+ | Détermine le langage standard((https:// | ||
+ | < | ||
+ | |||
+ | Compilation simple (sans assemblage) : | ||
+ | Pour simplement compiler afin de vérifier l' | ||
+ | < | ||
+ | |||
+ | Warnings: | ||
+ | pour que le compilateur retourne des warning sur des parties de codes qui lui semble incorrecte, on utilise généralement : | ||
+ | < | ||
+ | |||
+ | on retrouve la liste des options que cela englobe à l' | ||
+ | https:// | ||
+ | on peut compléter -Wall avec | ||
+ | < | ||
+ | |||
+ | Compilation sans édition de lien: | ||
+ | < | ||
+ | à la différence de l' | ||
+ | |||
+ | Compiler avec option de debuggage: | ||
+ | < | ||
+ | |||
+ | Compiler avec des fichiers //include// (header files): | ||
+ | < | ||
+ | Nota: vos fichier .h ou .hpp sont généralement avec vos sources, il est inutile d' | ||
+ | |||
+ | Optimisation: | ||
+ | -O1 ou -O2 ... ou -O3 | ||
+ | |||
+ | Quelle version utilise-t-on? | ||
+ | < | ||
+ | \\ | ||
+ | Pour une liste exhaustive des multiples options ou optimisations et pour une syntaxe détaillée de GCC, consulter la [[man|page de manuel]] de gcc (longue de plus de 15000 lignes) . | ||
+ | |||
+ | ===== Exécution ===== | ||
+ | |||
+ | * Pour exécuter le programme/ | ||
+ | * < | ||
+ | * Si vous avez des erreur essayez de modifier le "droit d' | ||
+ | * < | ||
+ | |||
+ | ===== Liens ===== | ||
+ | |||
+ | * Site officiel : [[http:// | ||
+ | * Wikipedia : [[wpfr> | ||
+ | * Tutoriel gcc : [[https:// | ||
+ | |||
+ | * [[gdb|Débugage avec gdb]] | ||
+ | |||
+ | ---- | ||
+ | |||
+ | // |