{{tag>programmation compilation java}}
===== Installation =====
Il suffit d'[[:tutoriel:comment_installer_un_paquet|installer le paquet]] **[[apt://gcc|gcc]]**.
À noter que lorsque l'on installe le paquet virtuel ''build-essential'', il est fait appel à GCC pour la partie compilation. Mais cela ajoute d'autres utilitaires comme [[Make]] qui sont généralement nécessaires à toute compilation plus poussée que le simple bout de code. Il est donc conseillé d'installer directement **[[apt://build-essential|build-essential]]**.
==== 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 la liste suivante de commandes((http://askubuntu.com/questions/466651/how-do-i-use-the-latest-gcc-on-ubuntu/581497)) en remplaçant si besoin le 5 par le numéro de version voulue:
sudo add-apt-repository ppa:ubuntu-toolchain-r/test
sudo apt-get update
sudo apt-get install gcc-5 g++-5
sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-5 60 --slave /usr/bin/g++ g++ /usr/bin/g++-5
===== Utilisation =====
==== en C ====
On peut appeler GCC directement par ligne de commande ou à travers un [[wpfr>Environnement de développement intégré|EDI]]. On pourra se reporter à la [[programmation|page générique sur la programmation]] pour une liste d'EDI par langage.
Basiquement, la syntaxe est la suivante (exécution dans un [[terminal]]) :
gcc code.ext -o binaire
en remplaçant bien sûr ''code.ext'' par le fichier source d'entrée et ''binaire'' par le fichier de sortie souhaité. À défaut de paramètre //output file// (''-o binaire''), gcc créera ''a.out''.
À noter qu'il faut se trouver dans le dossier où se situe le fichier.c.
==== en C++ ====
Utilisation classique :
g++ fichier.cpp -std=c++11 -Wall -Wextra -o fichier_executable
-o fichier_executable
-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://isocpp.org/std/the-standard)):
-std=c++14
Compilation simple (sans assemblage) :
Pour simplement compiler afin de vérifier l'absence d'erreur (ou plutôt voir ses erreurs), on utilise :
g++ -S fichier.cpp
Warnings:
pour que le compilateur retourne des warning sur des parties de codes qui lui semble incorrecte, on utilise généralement :
-Wall
on retrouve la liste des options que cela englobe à l'adresse ci-dessous:\\
https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html\\
on peut compléter -Wall avec
-Wextra
Optimisation:
-O1 ou -O2 ... ou -O3
Quelle version utilise-t-on?
g++ --version
\\
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/fichier binaire généré par le GCC, programmé en c par exemple, avec un fichier nommé "BinaireTest"
* ./BinaireTest
* Si vous avez des erreur essayez de modifier le "droit d'accès" du ficher avec cette commande :
* sudo chmod 770 BinaireTest
----
//Contributeurs : [[utilisateurs:Johndescs]], [[utilisateurs:bcag2]], [[utilisateurs:bensuperpc]]//
===== Liens =====
* Site officiel : [[http://gcc.gnu.org|GCC, the GNU Compiler Collection]] [en]
* Wikipedia : [[wpfr>GNU_Compiler_Collection|Page sur GCC]] [fr]
* Tutoriel gcc : [[http://fr.openclassrooms.com/informatique/cours/compilez-sous-gnu-linux|Compilez sous GNU/Linux]] [fr]
* [[gdb|Débugage avec gdb]]
----
//Contributeurs : [[utilisateurs:Johndescs]], [[utilisateurs:bcag2]]//