Gentoossa emerge -uDNavt world kaatuu php:n käännössä tällaiseen virheeseen:
libtool: link: cannot find the library `/usr/lib/gcc/i386-pc-linux-gnu/3.4.5/libstdc++.la' or unhandled argument `/usr/lib/gcc/i386-pc-linux-gnu/3.4.5/libstdc++.la' make: *** [sapi/cli/php] Error 1 !!! ERROR: dev-lang/php-5.1.4 failed. !!! Function php5_1-sapi_src_compile, Line 571, Exitcode 2 !!! make failed !!! If you need support, post the topmost build error, NOT this status message.
Miten tuo pitäisi korjata?
Aika outo, kirjastojen puuttumisen saattaa korjata komento revdeb-rebuild eli sitä kannattaa kokeilla.
Irkissä sain ohjeita että emerge libstdc++ voisi korjata asian, tai fix_libtool_files.sh. Emergoin libstdc++:san ja pistin nyt worldin emergoitumaan, katsotaan miten onnistuu (tuo virhe ei tule ihan käännön alussa joten vanha kone kun tuo on, saa odotella jonkun aikaa, jos nyt tuo virhe on ilmetäkseen).
EDIT: Sama virhe tuli.
revdeb-rebuildista sanoo command not found.
Muokkausaika umpeutui. Irkissä sain vihjeen että komento voisi olla revdep-rebuild joka löytyy gentoolkit paketista. Täytyy nyt kokeilla jos toimisi tuo php:n kääntö tämän ajamisen jälkeen.
EDIT: Ja edelleen sama virhe.
EDIT: Ja kyseinen kirjasto löytyisi kyllä jos hakemistopolussa olisi 386:den sijaan 686, pitäisikö vain symlinkata oikeaan kansioon osoittamaan?
Kokeilin symlinkata ja jätin yöksi ajelemaan emerge worldin. Php näyttäisi kääntyneen mutta portagen kääntö kaatui.
gcc-config error: Could not run/locate "i386-pc-linux-gnu-gcc" error: command 'i386-pc-linux-gnu-gcc' failed with exit status 1 !!! ERROR: sys-apps/portage-2.0.54-r1 failed. !!! Function src_compile, Line 47, Exitcode 1 !!! Failed to build missingos module !!! If you need support, post the topmost build error, NOT this status message.
Kokeile valita käytettävä gcc uusiksi gcc-config:lla.
Lista gcc:n versioista:
gcc -l
Käytettävän gcc:n version valitseminen, esim.
gcc -s i686-pc-linux-gnu-3.4.5
Ja tämän jälkeen vielä:
env-update && source /etc/profile
Kokeile, auttaako tuo yhtään. Itse ei kannata symlinkeillä mennä sorkkimaan.
Ja voithan myös hypätä php:n yli ja jatkaa emergeä komennolla:
emerge --resume --skipfirst
Emergoin glibc:n, binutils:in ja gcc:n uusiksi varalta.
gcc -l
ei toimi. Sanoo että:
gcc: argument to `-l' is missing
Mitenköhän pitäisi toimia?
gcc-config -l kenties?
No tuolla sain listauksen aikaan, mutta oikea profiili oli jo valittuna: i686-pc-linux-gnu-3.4.5
Ajoin varalta tuon env-update && source /etc/profile mutta portagen kääntö kaatuu edelleen samaan virheeseen.
PS: Poistin sen symlinkin jos se kerta häiritsee.
Hups, tuon gcc:n tilalla pitäisi tietysti olla gcc-config ja idea oli, että asetat sen uudelleen, vaikka sen pitäisikin olla jo asetettu.
Tein ohjeiden mukaan, kaatuu portagen käännössä tähän samaan:
gcc-config error: Could not run/locate "i386-pc-linux-gnu-gcc" error: command 'i386-pc-linux-gnu-gcc' failed with exit status 1 !!! ERROR: sys-apps/portage-2.0.54-r1 failed. !!! Function src_compile, Line 47, Exitcode 1 !!! Failed to build missingos module !!! If you need support, post the topmost build error, NOT this status message.
http://forums.gentoo.org/viewtopic-t-321340.html
Tuollainen tuli vastaan gentoo-foorumilla, toivottavasti on jotai apua.
En nyt oikein tiedä miten tuota foorumin ohjetta soveltaisi, kun gcc-config -l:län antama lista ei sisällä vanhaa kääntäjää.
[1] i686-pc-linux-gnu-3.4.5 * [2] i686-pc-linux-gnu-3.4.5-hardened [3] i686-pc-linux-gnu-3.4.5-hardenednopie [4] i686-pc-linux-gnu-3.4.5-hardenednopiessp [5] i686-pc-linux-gnu-3.4.5-hardenednossp
EDIT: Kummallista :D Alkoi toimia kun re-emergoin pythonin.
Sama ongelma tuli jälleen, kun ajoin emerge --newuse world:in. Olin emerge syncannut ensin.
Tuon Heikin mainitseman revdep-rebuildin ajaminen voisi auttaa jotakin. Saat sen emergeämällä gentoolkit-paketin.
Aihe on jo aika vanha, joten et voi enää vastata siihen.