GCC ist ein sehr leistungsfähiger Compiler, und er kann als die wichtigste freie Software überhaupt bezeichnet werden. Immerhin sind das freie Betriebssystem Linux und viele andere Programme auch gcc und die Toolchains selbst mit gcc generiert.
Genau genommen ist GCC kein Compiler, sondern ein Compiler-Generator, mit dem verschiedene (Cross-)Compiler erzeugt werden können. Es kann z.B unter Linux ein C-Compiler erzeugt werden, der unter Windows läuft und Code für einen AVR-Controller generiert. Oder es kann unter Linux ein Java-Compiler daraus generiert werden, der unter Linux läuft und Java-Quellen in class-Files, Object-Files oder Executables übersetzt.
Die Abkürzung "GCC" steht für "GNU Compiler Collection", während das kleingeschriebene "gcc" für "GNU C-Compiler" steht.
GCC kann Compiler generieren, die unterschiedliche Sprachen verstehen, darunter C, C++, Java und Ada. Der erzeugte Code ist je nach Ausprägung bzw. Konfiguration lauffähig auf den unterschiedlichsten Prozessoren, Controllern und Plattformen, etwa Alpha, ARM, AVR, Intel i386, Itanium 64, PowerPC, PDP-11, Motorola 68000, SUN Sparc, Coldfire, Infineon TriCore und XC16x, PIC, Java VM, ...