Login
Newsletter
Werbung

Do, 15. April 2010, 15:21

Software::Entwicklung

GCC 4.5.0 freigegeben

Ein knappes Jahr nach GCC 4.4.0 haben die GCC-Entwickler nun Version 4.5.0 des freien Compilers mit der neuen Optimierung beim Linken und Plugin-Fähigkeit veröffentlicht.

GCC-Logo

gnu.org

GCC-Logo

GCC, die GNU Compiler Collection, enthält Compiler und Laufzeit-Bibliotheken für C++, C, Objective C, Fortran, Java und Ada. Sie unterstützt hunderte von Kombinationen von Prozessor, Rechnerarchitektur und Betriebssystem, darunter alle von Linux und den BSD-Systemen unterstützte Architekturen. Auch Cross-Compilierung zwischen beliebigen Plattformen ist möglich.

GCC 4.5.0 enthält gegenüber GCC 4.4.0 eine Vielzahl von Änderungen. Zum Generieren des Compilers aus dem Quellcode muss jetzt die MPC-Bibliothek installiert sein. Das Aufräumen des Codes wurde fortgesetzt: Die Unterstützung für einige veraltete Plattformen wurde für obsolet erklärt und wird in einem Jahr aus GCC verschwinden. Auf solche Systemen muss man bei einer älteren Compiler-Version bleiben. Für die Systeme und Funktionen, die schon in GCC 4.4 für obsolet erklärt wurden, ist nun die Frist abgelaufen und sie wurden entfernt. Darunter befindet sich auch die Unterstützung für Itanium1, allerdings soll Code, der für Itanium2 generiert wurde, auch auf der älteren Plattform laufen. Unterstützung für etliche neue Prozessoren, darunter den POWER7 von IBM, kam hinzu.

Das Format der Debug-Informationen nutzt laut den Entwicklern nun mehr Features des DWARF3-Formates sowie einige Features des DWARF4-Formates. Zum Debuggen von neu compiliertem Code wird daher GDB 7.0 oder neuer benötigt.

Code mit Gleitkomma-Arithmetik kann mit GCC 4.5.0 unter Umständen deutlich langsamer laufen als mit GCC 4.4.0, weil die verbesserte Konformität mit dem C99-Standard ihren Preis hatte. Mit einer neuen Option kann man das alte Niveau wieder erreichen. Auf der anderen Seite kann GCC arithmetische Ausdrücke zur Compile-Zeit dank der MPC-Bibliothek mit größerer Genauigkeit berechnen, und verschiedene Code-Optimierungen kamen hinzu. Mit dem neuen Optimieren beim Linken, das allerdings explizit aktiviert werden muss, können Optimierungen über Modulgrenzen hinweg vorgenommen werden. Teile des Codes konnten schon mit GCC 4.4 automatisch parallelisiert werden, diese Funktionalität wurde nun erweitert.

Der C/C++-Compiler beendet nun die Compilierung sofort, wenn eine Include-Datei fehlt, was große Mengen unnützer Fehlermeldungen vermeidet. Die Unterstützung für den kommenden ISO C++-Standard C++0x wurde verbessert, wird aber noch als experimentell bezeichnet. Ebenfalls experimentell ist ein Profile-Modus für die Standard-C++-Bibliothek, mit dem diese Bibliothek mit Code für Geschwindigkeitsmessungen instrumentiert wird.

Eine nur am Rande erwähnte, aber offensichtlich wichtige Änderung ist die Möglichkeit, nun Plugins zu GCC hinzuzufügen. Plugins können auf verschiedene Weise mit dem Compiler interagieren, sie besitzen Zugriff auf alle Teile von GCC, wie in der internen Dokumentation des Compilers beschrieben. Für diese Funktionalität gibt es zahlreiche Interessenten, von denen einige im Wiki aufgeführt sind.

Eine Liste aller Änderungen kann man im Changelog des Compilers finden. Der Quellcode von GCC 4.5.0 kann von zahlreichen Spiegel-Servern des GNU-Projektes heruntergeladen werden.

Werbung
Kommentare (Insgesamt: 6 || Alle anzeigen )
Re: Die c99 Kompatibilität muß man explizit einsch (Jörg Zweier, Sa, 17. April 2010)
Die c99 Kompatibilität muß man explizit einschalte (furanku, Sa, 17. April 2010)
Re[3]: Endlich! (Anonymer Coward, Fr, 16. April 2010)
Re[2]: Endlich! (Tonband, Fr, 16. April 2010)
Re: Endlich! (Jørg Dreier, Do, 15. April 2010)
Pro-Linux
Pro-Linux @Facebook
Neue Nachrichten
Werbung