Différences
Ci-dessous, les différences entre deux révisions de la page.
| Les deux révisions précédentesRévision précédenteProchaine révision | Révision précédente | ||
| gcc [Le 27/07/2016, 12:10] – [version plus récente] 134.158.82.12 | 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]] | ||
| + | |||
| + | ---- | ||
| + | |||
| + | // | ||
