GNU Compiler Collection
Un article de Wikipédia, l'encyclopédie libre.
Cet article fait partie de la série Langages de programmation |
Langages à objets |
4D - C++ - C# - D Delphi - Eiffel - Groovy Java - Python - Ruby Simula - Smalltalk Visual Basic - WinDev |
Langages impératifs |
APL - ASP - Assembleur BASIC - C - Cobol Forth - Fortran - Limbo Logo - Pascal - Perl - PHP |
Langages fonctionnels |
Haskell - ML/OCaml Lisp/Common Lisp Scheme XSLT |
Langages déclaratifs |
Clips - Prolog |
Langages concurrents |
Ada 95 - Erlang |
Langage de balisage |
HTML - SGML - XML S-expressions |
Voir aussi |
Conception - Codage Tests - Optimisations |
En informatique, GCC, abréviation de GNU Compiler Collection, est le compilateur créé par le projet GNU. Il s'agit d'une collection de logiciels libres intégrés capables 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 |
[modifier] 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 ;
- la partie commune à tous les compilateurs ;
- le compilateur C lui-même.
Pour faire référence précisément aux compilateurs de chaque langage, on parle de :
- GCC pour C ;
- G++ pour C++ ;
- GCJ pour Java ;
- GNAT pour Ada ;
- Gfortran pour Fortran.
- GPC pour le Pascal
[modifier] 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.
[modifier] Portabilité
GCC a été porté sur un nombre considérable de systèmes d'exploitation (pratiquement toutes les variantes d'Unix, VMS, Windows) et de microprocesseurs (AMD64, ARM, DEC Alpha, M68k, MIPS, PowerPC, SPARC, x86, Hitachi H8).
[modifier] Histoire
Le développement de GCC a commencé en 1985 par Richard Stallman, fondateur de la Free Software Foundation, dans un "dialecte" non portable de Pascal. Avec l'aide de Len Tower, il réécrit GCC en C ANSI et le publie en 1987 comme le compilateur du projet GNU.
En 1992, la version 2.0 apporte en plus des nombreuses optimisation, 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élioration, ils décident alors de faire un fork du projet et le nomme 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 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 Linux, les BSD, Mac OS X, NeXTSTEP ou encore BeOS/Haïku.
[modifier] 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 ; or Linux est très présent dans les laboratoires.
Voici les dates de sortie des dernières versions principales :
- 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.0.4 : 31 janvier 2007
- 4.1 : 28 février 2006
- 4.1.2 : 13 février 2007
[modifier] 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 -lbibliothèque
De nombreuses options (passées en paramètre) permettent aux initiés d'agir sur la compilation. GCC est souvent utilisé dans les makefile par le programme make.
[modifier] Liens externes
- (en) Le site officiel
- (fr) Le Man de GCC
- (fr) GCC HOWTO pour Linux
- (en) Catégorie GNU Compiler Collection de l'annuaire dmoz.
Portail des logiciels libres – Accédez aux articles de Wikipédia concernant les logiciels libres. |
Catégories : GNU • Compilateur