- GNU Compiler Collection
-
Pour les articles homonymes, voir GCC.
GNU Compiler Collection Développeur Le projet GNU Dernière version 4.6.2 (26 octobre 2011) [+/-] Version avancée [+/-] Environnements Multiplate-forme Type Compilateur Licences GNU GPL et GNU LGPL Site web gcc.gnu.org modifier GNU Compiler Collection, abrégé en GCC, est un ensemble de compilateurs créés par le projet GNU. GCC est un logiciels libres capable de compiler divers langages de programmation, dont C, C++, Objective-C, Java, Ada et Fortran.
GCC est utilisé pour le développement de la plupart des logiciels libres. Le noyau Linux dépend notamment étroitement des fonctionnalités de GCC.
Sommaire
Présentation
GCC a été conçu pour remplacer le compilateur C fourni en standard sur le système d'exploitation Unix, qui s'appelle CC. GCC signifiait à l'origine GNU C Compiler, soit le « compilateur C de GNU ». Comme GCC est très extensible, le support de nombreux autres langages a été ajouté et le nom officiel a été changé en GNU Compiler Collection (note : sans « s » à Compiler).
En pratique, l'abréviation GCC est utilisée pour nommer trois entités légèrement différentes :
- la collection complète de compilateurs (le « projet GCC ») ;
- la partie commune à tous les compilateurs (« GCC ») ;
- le compilateur C lui-même (le frontend « gcc », écrit en minuscule).
Pour faire référence précisément aux compilateurs de chaque langage, on parle de :
- gcc pour C ;
- G++ pour C++ ;
- GobjC pour Objective C
- GCJ pour Java ;
- GNAT pour Ada ;
- Gfortran pour Fortran ;
- GPC pour le Pascal;
- GHDL pour le VHDL.
- GDC pour le D
Débogage
Article détaillé : GNU Debugger.GCC dispose également d'un outil de débuggage, GNU Debugger (gdb). Bien que ne faisant pas partie de GCC, Valgrind est cependant préféré pour des tests plus en profondeurs, notamment pour rechercher les fuites de mémoire.
Portabilité
GCC a été porté sur un nombre considérable de systèmes d'exploitation (pratiquement toutes les variantes d'Unix, VMS, Windows et MS-DOS via DJGPP) et de microprocesseurs (AMD64, ARM, DEC Alpha, M68k, MIPS, PowerPC, SPARC, x86, Hitachi H8).
Histoire
Richard Stallman débute ses développements avec le langage de programmation Pastel, un « dialecte » non portable de Pascal. Une première version est ainsi utilisable dès juin 1984[1]. Ce langage s'inspire en partie du compilateur Pastel, mais aussi du compilateur portable de l'université d'Arizona[2].
Il écrit un nouveau compilateur C ANSI à partir du printemps 1986[2], puis, avec l'aide de Len Tower et sous l'égide de la Free Software Foundation, il distribue une première version bêta le 22 mars 1987[3].
En 1992, la version 2.0 apporte en plus des nombreuses optimisations, le support du langage C++.
En 1997, un groupe de développeurs trouve le modèle de développement lent et peu propice aux améliorations, ils décident alors de faire un fork du projet et le nomment EGCS (pour Experimental/Enhanced GNU Compiler System). Suite aux nombreuses améliorations réalisées, EGCS et GCC sont réunis en avril 1999, la première version publiée est la 2.95.
GCC suit de près l'évolution de la normalisation des langages, et parfois même la précède ; ainsi certaines des fonctionnalités de la norme C99 étaient déjà présentes avant la publication officielle.
GCC est aujourd'hui le compilateur le plus utilisé dans la communauté des logiciels libres et est le compilateur de nombre de systèmes d'exploitations, comme GNU/Linux, les BSD, Mac OS X, NeXTSTEP ou encore BeOS/Haiku.
Versions
Les versions sont fixées par le GCC Steering Committee. La version 4 compile le Fortran 95 suite à la demande de très nombreux utilisateurs scientifiques. C'est, en effet, dans ce langage que s'échangent la plupart des bibliothèques source et sous-programmes scientifiques actuels[réf. nécessaire] ; or Linux est très présent dans les laboratoires.
Voici les dates de sortie des dernières versions principales[4]:
- 3.0 : 18 juin 2001
- 3.1 : 15 mai 2002
- 3.2 : 14 août 2002
- 3.3 : 13 mai 2003
- 3.4 : 18 avril 2004
- 4.0 : 20 avril 2005
- 4.1 : 28 février 2006
- 4.2 : 13 mai 2007
- 4.3 : 5 mars 2008
- 4.4 : 21 avril 2009
- 4.5 : 14 avril 2010
- 4.6 : 25 mars 2011
Syntaxe
La syntaxe de base utilisée par les compilateurs de GCC est :
gcc fichierSource.c -o binaire
Pour utiliser des bibliothèques, la syntaxe est la suivante :
gcc fichierSource.c -o binaire -l''bibliothèque''
De nombreuses options (passées en paramètre) permettent d'agir sur la compilation. GCC est souvent utilisé dans les makefile par le programme make.
Notes et références
- « Personal Note from Richard Stallman - Lisp Machine Manual », common-lisp.net, juin 1984.
- « Conférence de RMS au KTH (Suède) », gnu.org, 30 octobre 1986.
- (en) La première version de GCC distribuée en version bêta le 22 mars 1987.
- Historique des versions
Voir aussi
Articles connexes
Liens externes
- (en) Site officiel
- (en) Catégorie GNU Compiler Collection de l’annuaire dmoz
Catégories :- Logiciel du projet GNU
- Compilateur C
- Logiciel libre sous licence GPL
- Logiciel pour Unix
Wikimedia Foundation. 2010.