GCC 4.7: Neue Version zum 25. Geburtstag

23. März 2012, 15:03

Erste Release am 22. März 1987 veröffentlicht - Neue Ausgabe mit vielen Optimierungen

Es war der 22. März 1987 als Free Software Foundation-Gründer Richard Stallman die erste Versionen eines der wohl wichtigsten Bestandteils der freien Softwarewelt zum Download bereitstellte: Die GNU Compiler Collection - kurz GCC genannt - ward geboren. Nun ist dieses Stück Software ein Vierteljahrhundert alt geworden - und feiert diese Umstand gebührend mit einer neuen Release.

Neues

Einige Tage früher als eigentlich geplant gibt es nun also bereits die GCC 4.7.0, die wieder eine Fülle an Optimierungen und neuen Funktionen mit sich bringt. Dazu gehört die Unterstützung für Software Transactional Memory (STM) bei einigen Architekturen, sowie eine Reihe von neuen Funktionen für den C++-Compiler, etwa das neue Speichermodell von C++11. Das Framework für Link-Time-Optimierungen soll nun besser skalieren und weniger Ressourcen verbrauchen.

Hardware

Zudem wird einmal mehr der Hardwaresupport erweitert, etwa für den Epiphany-Prozessor von Adapteva oder die CPUs von Tilera (Tile-Gx und Tilepro) und den C6X von Texas Instruments. In Fragen ARM-Chips wird jetzt auch die aktuelle Cortex-A7-Familie unterstützt.

Download

Die GCC 4.7.0 kann ab sofort in Form des Source Codes von der Seite des Projekts heruntergeladen werden, ausführliche Informationen zur neuen Version gibt es im offiziellen Changelog. (apo, derStandard.at, 23.03.12)

Kommentar posten
14 Postings
Echte Profis verwenden doch eh nur Visual Basic

Super, jetzt muss ich mich wegen C++11 nicht mehr mit Clang ärgern.

Die C++11-Unterstützung war doch schon vorher bei gcc kompletter.

Dafür sind die Compilezeiten bei LLVM kürzer, Fehlermeldungen verständlicher u.v.m. Langfristig wird LLVM "gewinnen" denke ich.

Aber

kein Real-World Programmer verwendet C++11.

Die meisten "Real World Programmer" verwenden ja auch nicht C++, sondern C# oder Java. Und wenn sie C++ verwenden, dann plattform- und compilerspezifisch und im Rahmen eines Frameworks wie Qt.

Wenn man sich jedoch mit Fragen wie der Entwicklung von hocheffizienter portabler paralleler Software beschäftigt, ist C++11 ein GROSSER Schritt vorwärts. Vorher war man für atomare Operationen, Memory Fences und dgl. auf Inline Assembler, Compiler Intrinsics und anderes Gefrickel angewiesen, und das geht jetzt endlich nativ in C++. Und da gibt es durchaus welche, die sich damit beschäftigen (was in Zeiten der ManyCore-Architekturen nicht blöd ist).

Compilezeiten sind bei LLVM kürzer aber dafür macht der GCC mehr Optimierungen. Wenn der LLVM in Zukunft besser optimiert, dann werden die Compilezeiten auch langsamer. Ist doch immer so. Am Anfang ist Alternative X leicht und schnell. Es fehlen "halt nur n paar Features, aber die kommen in den nächsten Releases" und dann ist's auf einmal nichts mehr mit leicht und schnell.

Gewinnen wird langrfristig eh keiner. Es wird einfach zwei konkurrierende Compiler geben.

Jein. LLVM/Clang besitzt einfach eine sauberere Architektur, ist von Haus aus für Multithreading ausgelegt und ist speichereffizienter. GCC ist derzeit sicher in der Lage, effizienteren Code zu erzeugen, aber ich bezweifle, dass das der einzige Grund für die schlechtere Performance des Compilers selbst ist.

Mit "gewinnen" meinte ich, dass sich das Verhältnis der Nutzerzahlen Zugunsten LLVM verschieben wird. Dzt. ist ja LLVM nur auf OSX und FreeBSD in Verwendung, aber früher oder später wird er - trotz aller Unkerufe - wohl auch auf der einen oder anderen Linux-Distro Einzug halten. Verschwinden wird GCC sicher nicht.

zumindest aus der sicht der bsd community haben sie wahrscheinlich recht. freebsd 9.0 kam nun erstmals gleich mit llvm/clang, aus dieser ecke ist also auf jeden fall unterstützung zu erwarten.
allerdings bleibt abzuwarten, was das für auswirkungen hat...

Happy birthday!

Vor 2 Tagen Screen und nun GCC, das muss am Wochenende ordentlich gefeiert werden. Man muss ja wohl auf die naechsten 25 anstossen.

WOW!

Hätte nicht gedacht, dass ich hier im Klicki-Klicki-Bunti-Bunti- und iSheep-Forum einmal einen Artikel über ECHTE Innovationen lesen werde!

Könnte man den Teletubbies hier erklären, was so ein Compiler eigentlich macht - aber bitte so, dass es auch diese Montessori-Absolventen verstehen.

Ich frag mich nur, warum so ein interessanter Artikel dann unbedingt von einem frustrierten Troll angebr*nzt werden muss...

wassn

willst du den Source Code vortanzen?

made my day.

Die Kommentare von Usern und Userinnen geben nicht notwendigerweise die Meinung der Redaktion wieder. Die Redaktion behält sich vor, Kommentare, welche straf- oder zivilrechtliche Normen verletzen, den guten Sitten widersprechen oder sonst dem Ansehen des Mediums zuwiderlaufen (siehe ausführliche Forenregeln), zu entfernen. Der/Die Benutzer/in kann diesfalls keine Ansprüche stellen. Weiters behält sich die derStandard.at GmbH vor, Schadenersatzansprüche geltend zu machen und strafrechtlich relevante Tatbestände zur Anzeige zu bringen.