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:08] – [Installation] ajout §version plus récente 134.158.82.12 | gcc [Le 29/06/2025, 12:13] (Version actuelle) – 88.187.196.128 | ||
|---|---|---|---|
| Ligne 1: | Ligne 1: | ||
| {{tag> | {{tag> | ||
| + | |||
| + | {{ gcc_logo.png? | ||
| ====== GCC, le jeu de compilateurs GNU ====== | ====== GCC, le jeu de compilateurs GNU ====== | ||
| - | GCC (GNU Compiler Collection) est une suite de logiciels libres de compilation. On l' | + | 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. | Le noyau [[Linux]] dépend dans sa compilation des possibilités pointues de son compilateur C. | ||
| - | |||
| ===== Installation ===== | ===== Installation ===== | ||
| Ligne 14: | Ligne 15: | ||
| À noter que lorsque l'on installe le paquet virtuel '' | À noter que lorsque l'on installe le paquet virtuel '' | ||
| - | ==== version plus récente ==== | + | ==== Installer une autre version |
| Si vous ne savez pas quelle version vous voulez installer, vous pouvez exécuter: | Si vous ne savez pas quelle version vous voulez installer, vous pouvez exécuter: | ||
| Ligne 21: | Ligne 22: | ||
| </ | </ | ||
| - | Puis, exécutez la liste suivante de commandes en remplaçant si besoin le 5 par le numéro de version voulue: | + | Puis, exécutez, avec les [[: |
| < | < | ||
| - | sudo add-apt-repository ppa: | + | add-apt-repository ppa: |
| - | sudo apt-get update | + | apt-get update |
| - | sudo apt-get install gcc-5 g++-5 | + | apt-get install gcc-8 g++-8 |
| - | sudo update-alternatives --install / | + | update-alternatives --install / |
| </ | </ | ||
| + | |||
| + | Puis finalement, choisir la version de **'' | ||
| + | < | ||
| + | |||
| ===== Utilisation ===== | ===== Utilisation ===== | ||
| + | ==== en C ==== | ||
| On peut appeler GCC directement par ligne de commande ou à travers un [[wpfr> | On peut appeler GCC directement par ligne de commande ou à travers un [[wpfr> | ||
| Basiquement, | Basiquement, | ||
| - | gcc code.ext -o binaire | + | gcc code.ext -o binaire |
| en remplaçant bien sûr '' | en remplaçant bien sûr '' | ||
| - | À noter qu'il faut se trouver dans le dossier où se situe le fichier.c. | + | À noter qu'il faut se trouver dans le dossier où se situe le fichier.c. |
| ==== en C++ ==== | ==== en C++ ==== | ||
| Ligne 47: | Ligne 53: | ||
| -o pour output, permet de définir le fichier de sortie. Si absent, le fichier créé est nommé a.out | -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: | + | Détermine le langage standard((https:// |
| < | < | ||
| Ligne 62: | Ligne 68: | ||
| on peut compléter -Wall avec | 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: | Optimisation: | ||
| Ligne 71: | Ligne 88: | ||
| 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) . | 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 liées aux permissions, | ||
| + | * < | ||
| ===== Liens ===== | ===== Liens ===== | ||
| Ligne 76: | Ligne 99: | ||
| * Site officiel : [[http:// | * Site officiel : [[http:// | ||
| * Wikipedia : [[wpfr> | * Wikipedia : [[wpfr> | ||
| - | * Tutoriel gcc : [[http://fr.openclassrooms.com/informatique/ | + | * Tutoriel gcc : [[https://user.oc-static.com/pdf/31992-compilez-sous-gnu-linux.pdf|compilez |
| + | * [[gdb|Débugage avec gdb]] | ||
| ---- | ---- | ||
| - | // | + | // |
