GCC 4.3 – moje testy

Ostatnio z ciekawości postanowiłem przetestować GCC 4.3.0 (wersję z oficjalnego drzewa portage) w oddzielnym chroocie zawierającym kopię mojego roboczego systemu. Chciałem po prostu sprawdzić na ile problemów natknę się podczas rekompilacji systemu 🙂 Wynik? Nie jest aż tak źle. Większość problemów udało się rozwiązać przez proste odmaskowanie nowszej wersji. W prawie wszystkich wypadkach błąd był powodowany przez brakujące deklaracje nagłówków <cstring>, <cstdlib> czy też <memory>.

Oto szczegółowa lista pakietów, które się "wyłożyły":

Portage:
dev-libs/libsigc++-2.0.18
dev-libs/libebml-0.7.7-r1
media-libs/musicbrainz-2.1.4
sci-libs/cln-1.1.13
media-libs/flac-1.2.1-r1
app-backup/dar-2.3.3
dev-libs/boost-1.34.1-r2
media-libs/netpbm-10.40.0
media-libs/tunepimp-0.5.3
app-cdr/cdrdao-1.2.2
games-emulation/dosbox-0.72
sci-libs/libqalculate-0.9.6
dev-cpp/gtkmm-2.12.1
media-libs/libgpod-0.5.2
app-dicts/stardict-3.0.1
media-video/mjpegtools-1.8.0-r1
media-sound/lastfmplayer-1.4.2.58240
sci-calculators/qalculate-kde-0.9.6

Roslin Uberlay:
games-emulation/ps2emu-zerogs (dodałem łatkę do repo)
games-emulation/ps2emu-zerospu2 (j/w)
games-emulation/pcsx2 (j/w)
games-emulation/zsnes (bumpnięte do nowszej wersji z łatką)
dev-util/exmap (dodałem łatkę)

Dodatkowe łatki:
dev-cpp/glibmm-2.14.2 (2.16 ma stosowną łatkę, ale wymaga nowego gliba, łatka)
app-emulation/virtualbox-1.5.6 (dwie łatki od Ubuntu: łatka1, łatka2)

Natomiast przy kompilacji kernela (gentoo-sources-2.6.25-r4) dostałem ostrzeżenie o dziesięciu "section mismatches". Nie ma się jednak czym przejmować, bo stosowne łatki zostały już włączone do kernela 2.6.26, który niebawem powinien ujrzeć światło dziennie.

Jeśli chodzi o prędkość, nie zauważyłem żadnych większych różnic w prędkości kompilacji i działania programów. SDLmame i mplayer w trybie benchmark pokazują na tyle zbliżone wyniki, że nie będę ich przytaczał. Może inne aplikacje dostały większego kopa. Możliwe też, że poza chrootem wyniki byłyby lepsze. W każdym razie, sam kompilator "robił" się dwa razy dłużej niż 4.1, a binarki przezeń tworzone są minimalnie większe (różnica rzędu kilku procent).

Tu właściwie powinienem napisać jakieś podsumowanie, ale sam nie wiem co myśleć. Kompilator w miarę bezproblemowy, a większość łatek została już włączona do portage. Z drugiej strony, różnic w wydajności nie dostrzegłem (co nie oznacza, że ich nie ma). Wybór czy przejść teraz na nową wersję czy też poczekać aż zostanie ona odmaskowana pozostawiam wam.

EDIT: GCC 4.3.1 trafiło do ~arch. Powtórzyłem więc test. Wyniki bez zmian.

Dodaj komentarz

Twój adres email nie zostanie opublikowany. Pola, których wypełnienie jest wymagane, są oznaczone symbolem *