Upgrade GCC kompilátou z verze 3.3 na 3.4 - Gentoo Linuxu
Upgradovat gcc není složité, ale zabere dost strojového času. Když updatujeme systém, nejdříve synchronizujeme portage strom a potom stáhneme a zkompilujeme nové verze programů a knihoven.
# emerge --sync# emerge --deep --newuse --update world
Vše potřebné se zaktualizovalo a můžeme říci systému že může začít používat nové gcc.
Nejdříve se podíváme jaké verze gcc kompilátoru máme v systému.
# gcc-config -l
[1] i686-pc-linux-gnu-3.3.6 [2] i686-pc-linux-gnu-3.3.6-hardened [3] i686-pc-linux-gnu-3.3.6-hardenednopie [4] i686-pc-linux-gnu-3.3.6-hardenednopiessp [5] i686-pc-linux-gnu-3.3.6-hardenednossp [6] i686-pc-linux-gnu-3.4.5 * [7] i686-pc-linux-gnu-3.4.5-hardened [8] i686-pc-linux-gnu-3.4.5-hardenednopie [9] i686-pc-linux-gnu-3.4.5-hardenednopiessp [10] i686-pc-linux-gnu-3.4.5-hardenednossp
Přepneme profil pro používání nového kompilátoru.
# gcc-config i686-pc-linux-gnu-3.4.5# source /etc/profile
Překompilujeme libtool.
# emerge --oneshot -av libtoolPřekompilujeme libstdc pro kompatibilitu se staršími programy.
# emerge --oneshot sys-libs/libstdc++-v3Překompilujeme nejříve základ systému a pak celý systém.
# emerge -e system# emerge -e world
Tímto máme celý systém překompilován v novém gcc kompilátoru.
Problémy a jejich řešení.
Během kompilace může dojít k přerušení za nenadálích okolností. (Vypnutí proudu, ....) Tento problém vyřešíme zadáním # emerge --resume, což řekne portage systému aby pokračoval v poslední přerušené kompilaci.
Jestliže kompilace selže na překladu nejakého balíku, můžeme tento balík (poslední) přeskočit příkazem # emerge --resume --skipfirst a pokračovat v selhané kompilaci.
Odinstalaci starého gcc (3.3.6) provedeme příkazem:
emerge -aC =sys-devel/gcc-3.3*




















