Portál AbcLinuxu, 27. května 2024 05:17
Tak jsem se na svém Gentoo64 odhodlal přejít na GCC 4.1.
Byl to nářez. Když nestavíš systém znova od základů, není to úplně sranda, ale dá se to zvládnout.
Nejdříve jsem překompiloval kernel a Quake III potom jsem chtěl jít na Qt, ale tady zásek, chtělo to už Xka kompilovaný novou GCC. Tak jsem se zamyslel a zkompiloval tedy ty Xka a ještě autoconf, automake a podobně. Pak už Qt šla. KDE vypadalo podobně jako Windows 95, protože kdelibs potřebovaly překompilovat. Tak ju, emerge kdelibs. Byl to samej segfault. Kašlal jsem tedy na kdelibs a překompiloval libtool, make, rozjel fix_libtool_files.sh 3.4.5 a pokusil se zkompilovat glibc. Po několika pokusech se to zkompilovalo a mohl jsem jít na kdelibs. To se po ještě víc pokusech taky zkompilovalo a najednou (logicky) nešlo nic, co využívá libkhtml knihovnu. Namátkou Konqueror, KMail, KMLDonkey... tak jsem už bez problémů překompiloval zbytek KDE a šlo to. Chvilku jsem si zase pobyl na tty{1..4}. No jo, jenže rm se sekal... tedy asi takhle: měl smazat adresář, ale nic nedělal a měl status D, tak jsem ho nemohl zabít. Rm volá unlink z glibc, hm? (Ne, to není z mojí hlavy.) No jo no, s tím se musí počítat, tak emerge glibc. Tentokrát už napoprvé. Reboot, ještě mě pozdravil Kernel panic restartnul jsem to tedy tlačítkem a trochu doufal... nabootovalo to v pořádku a rm zase pěkně funguje. Vyhodil jsem GCC 3.4.5. Teď už nepočítám s problémy. Co dodat. Přechod byl jednoduchej a pro mě úspěšnej a můžu jen doporučit (pochopitelně si dělám srandu, nezkoušejte to, pokud neznáte aspoň ty základy, co já). Zase jsem o něco malinko chytřejší.
Tiskni Sdílej:
-ftree-vectorize
použité u zlibu mi způsobí, že Firefox/Mozilla crashují. To mě přivádí k myšlence, jestli je to bug nebo ne - teoreticky by přece kompilátor neměl kvůli jinému CFLAGS vygenerovat chybný kód.
make mrproper && cp /boot/config .config && kompile-kernel
s tím, že to poslední je skript, kterej zařídí zbytek. Každopádně jsem to teď zkusil a zdá se, že to nejde:
CHECK qt sed < scripts/kconfig/lkc_proto.h > scripts/kconfig/lkc_defs.h 's/P(\([^,]*\),.*/#define \1 (\*\1_p)/' HOSTCC scripts/kconfig/kconfig_load.o /usr/qt/3/bin/moc -i scripts/kconfig/qconf.h -o scripts/kconfig/qconf.moc HOSTCXX scripts/kconfig/qconf.o scripts/kconfig/qconf.h:25: error: extra qualification ‘ConfigSettings::’ on member ‘readSizes’ scripts/kconfig/qconf.h:26: error: extra qualification ‘ConfigSettings::’ on member ‘writeSizes’ scripts/kconfig/qconf.h:127: error: extra qualification ‘ConfigList::’ on member ‘updateMenuList’ make[1]: *** [scripts/kconfig/qconf.o] Error 1 make: *** [xconfig] Error 2
ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.