Nach harter Arbeit ist das GCC 14.2.0 Release veröffentlicht worden, das mehrere Build-Fehler behebt und einige Verbesserungen enthält. Außerdem gehören Binutils 2.29.1 und GDB 10.2 zum Paket.
Für Windows ist es als ausführbare Dateien verfügbar, während für die Erstellung auf Linux-Systemen ein Bash-Skript bereitgestellt wird.
Verbesserungen:
- Unterstützung für C++11 und neuere Versionen im SDK;
- Der für Symbian verwendete Makro ist standardmäßig definiert: __SYMBIAN32__;
- Vollständige Unterstützung für gängige vordefinierte Makros im GCC;
- Der Operator delete ( void* ptr, std::size_t sz ) noexcept wird nicht exportiert.
Um moderne C++-Standards zu unterstützen, befinden sich zwei Header-Dateien in den fixed_headers: gcce.h und e32cmn.h. Die erste ist für alle SDKs auf Basis von Symbian 9 geeignet, die zweite ist nur mit einigen SDKs und den Quellcodes von Symbian 3 kompatibel. Zur Installation sollte install_headers.py verwendet werden.
Der Makro __SYMBIAN32__ dient zur Isolierung von für Symbian bestimmten Code. Er wird standardmäßig vom SDK-Build-System oder über die Compiler-Parameter festgelegt, wenn ein anderes Build-System verwendet wird. Dies erleichtert es nun etwas für Nutzer anderer Build-Systeme.
„Die gängigen vordefinierten Makros sind GNU C-Erweiterungen“ ©GCC-Handbuch – ein vollständiges Set von Makros für fixierte Datentypen wird bereitgestellt.
Fehlerbehebungen:
- Build-Fehler GCC „crtfastmath.o nicht gefunden“;
- Hat sich freistehend libstdc++ vorgenommen;
- Hat sich GDB vorgenommen.
Seit Version 5 wurde GCC nur noch mit make -k gebaut; ohne dies wurde crtfastmath.o erforderlich, und das Build endete hier. Dies, obwohl diese Datei im SOFTFP-Modus nicht kompiliert wird (in diesem Modus ist der FPU egal, ob real oder emuliert!). Mit dem angegebenen Schlüssel wurde alles gebaut, außer freistehendem libstdc++ und GDB.
Herunterladen hier.
Quelle: linux.org.ru
