Gentoo Forums
Gentoo Forums
Gentoo Forums
Quick Search: in
gcc-4.1.1, libstdc++.la and KDE - mental meltdown! [SOLVED]
View unanswered posts
View posts from last 24 hours

 
Reply to topic    Gentoo Forums Forum Index Portage & Programming
View previous topic :: View next topic  
Author Message
binro
Guru
Guru


Joined: 06 May 2005
Posts: 513
Location: Bangkok, Thailand

PostPosted: Fri Jun 30, 2006 9:40 am    Post subject: gcc-4.1.1, libstdc++.la and KDE - mental meltdown! [SOLVED] Reply with quote

I have been recompiling for five days now and no end is in sight. The plan was to migrate from gcc-3.3.6 to gcc-4.1.1, to which end I read the upgrade HOWTO and numerous threads, acquired emwrap, and then set to. The "emerge -e system" went well, I did the other stuff and then "emerge -e world". This always fails in kdelibs with libtool not finding "/usr/lib/gcc/i686-pc-linux-gnu/4.1.1/libstdc++.la", which is fair enough because it is not there, by design it seems.

    # ChangeLog for sys-devel/gcc
    # Copyright 1999-2006 Gentoo Foundation; Distributed under the GPL v2
    # $Header: /var/cvsroot/gentoo-x86/sys-devel/gcc/ChangeLog,v 1.560 2006/06/30 02:48:38 vapier Exp $

    30 Jun 2006; Mike Frysinger <vapier@gentoo.org> gcc-4.0.2-r3.ebuild,
    gcc-4.0.3.ebuild, gcc-4.1.0-r1.ebuild, gcc-4.1.1.ebuild,
    gcc-4.2.0_alpha20060603.ebuild:
    Move glibc into PDEPEND and drop libstdc++ garbage.

    <snip>

    14 May 2006; Mark Loeser <halcy0n@gentoo.org> -gcc-4.1.0.ebuild,
    +gcc-4.1.0-r1.ebuild, -gcc-4.2.0_alpha20060506.ebuild,
    +gcc-4.2.0_alpha20060513.ebuild:
    Bump gcc-4.1 so everyone gets the newest changes (no more libstdc++.la and
    the 1.4 patchset), and bump the 4.2 weekly snapshot

I have tried the fix_libtools_files.sh routine but this does nothing. So I guess I have the following questions:

    1. What is libstdc++.la?
    2. Why does KDE and other packages need it?
    3. Why has gcc-4.1.1 not got one?
    4. How do I proceed?

I am building on a laptop that is not required for anything at the moment, otherwise, believe me, the partition would have been scratched and the old system restored days ago. :?

TIA
_________________
"Ship me somewheres east of Suez, where the best is like the worst,
Where there ain't no Ten Commandments an' a man can raise a thirst"
from "Mandalay" by Rudyard Kipling


Last edited by binro on Fri Jun 30, 2006 3:06 pm; edited 1 time in total
Back to top
View user's profile Send private message
Gergan Penkov
Veteran
Veteran


Joined: 17 Jul 2004
Posts: 1464
Location: das kleinste Kuhdorf Deutschlands :)

PostPosted: Fri Jun 30, 2006 10:24 am    Post subject: Reply with quote

Could you post your exact error message. Generally there is a problematic reference in another la-file, finding the package to which this second la-file belongs and rebuilding it should resolve the problem.
_________________
"I knew when an angel whispered into my ear,
You gotta get him away, yeah
Hey little bitch!
Be glad you finally walked away or you may have not lived another day."
Godsmack
Back to top
View user's profile Send private message
binro
Guru
Guru


Joined: 06 May 2005
Posts: 513
Location: Bangkok, Thailand

PostPosted: Fri Jun 30, 2006 11:09 am    Post subject: Reply with quote


    /bin/sh ../../../libtool --silent --tag=CXX --mode=link i686-pc-linux-gnu-g++ -Wno-long-long -Wundef -ansi -D_XOPEN_SOURCE=500 -D_BSD_SOURCE -Wcast-align -Wconversion -Wchar-subscripts -Wall -W -Wpointer-arith -DNDEBUG -DNO_DEBUG -O2 -O2 -march=pentium4 -fomit-frame-pointer -pipe -Wformat-security -Wmissing-format-attribute -Wno-non-virtual-dtor -fno-exceptions -fno-check-new -fno-common -DQT_CLEAN_NAMESPACE -DQT_NO_ASCII_CAST -DQT_NO_STL -DQT_NO_COMPAT -DQT_NO_TRANSLATION -o kspell_aspell.la -rpath /usr/kde/3.5/lib/kde3 -module -no-undefined -Wl,--no-undefined -Wl,--allow-shlib-undefined -avoid-version -module -no-undefined -Wl,--no-undefined -Wl,--allow-shlib-undefined -R /usr/kde/3.5/lib -R /usr/kde/3.5/lib -R /usr/qt/3/lib -R /usr/lib kspell_aspell_la.all_cpp.lo ../../ui/libkspell2.la -laspell
    grep: /usr/lib/gcc/i686-pc-linux-gnu/4.1.1/libstdc++.la: No such file or directory
    /bin/sed: can't read /usr/lib/gcc/i686-pc-linux-gnu/4.1.1/libstdc++.la: No such file or directory
    libtool: link: `/usr/lib/gcc/i686-pc-linux-gnu/4.1.1/libstdc++.la' is not a valid libtool archive
    make[4]: *** [kspell_aspell.la] Error 1
    make[4]: Leaving directory `/var/tmp/portage/kdelibs-3.5.3-r3/work/kdelibs-3.5.3/kspell2/plugins/aspell'
    make[3]: *** [all-recursive] Error 1
    make[3]: Leaving directory `/var/tmp/portage/kdelibs-3.5.3-r3/work/kdelibs-3.5.3/kspell2/plugins'
    make[2]: *** [all-recursive] Error 1
    make[2]: Leaving directory `/var/tmp/portage/kdelibs-3.5.3-r3/work/kdelibs-3.5.3/kspell2'
    make[1]: *** [all-recursive] Error 1
    make[1]: Leaving directory `/var/tmp/portage/kdelibs-3.5.3-r3/work/kdelibs-3.5.3'
    make: *** [all] Error 2


Can't see any other .la library. Something to do with aspell?
_________________
"Ship me somewheres east of Suez, where the best is like the worst,
Where there ain't no Ten Commandments an' a man can raise a thirst"
from "Mandalay" by Rudyard Kipling
Back to top
View user's profile Send private message
Gergan Penkov
Veteran
Veteran


Joined: 17 Jul 2004
Posts: 1464
Location: das kleinste Kuhdorf Deutschlands :)

PostPosted: Fri Jun 30, 2006 11:15 am    Post subject: Reply with quote

look if there is reference to libstdc++.la in /usr/lib/libaspell.la (normally these should be fixed from fix_libtool_files.sh, have you tried to pass as argument your former gcc-version to it?).
_________________
"I knew when an angel whispered into my ear,
You gotta get him away, yeah
Hey little bitch!
Be glad you finally walked away or you may have not lived another day."
Godsmack
Back to top
View user's profile Send private message
binro
Guru
Guru


Joined: 06 May 2005
Posts: 513
Location: Bangkok, Thailand

PostPosted: Fri Jun 30, 2006 11:39 am    Post subject: Reply with quote

libaspell.la does contain a reference to 4.1.1, so we are on the right track. There is a copy of libstdc++.la in ~/gcc/~/3.4.6 but running "fix_libtools_files.sh 3.4.6" does nothing and this is the problem! Note I started with gcc-3.3.6 but this got upgraded to 3.4.6 during the process.
_________________
"Ship me somewheres east of Suez, where the best is like the worst,
Where there ain't no Ten Commandments an' a man can raise a thirst"
from "Mandalay" by Rudyard Kipling
Back to top
View user's profile Send private message
Gergan Penkov
Veteran
Veteran


Joined: 17 Jul 2004
Posts: 1464
Location: das kleinste Kuhdorf Deutschlands :)

PostPosted: Fri Jun 30, 2006 11:54 am    Post subject: Reply with quote

now this is a little bit risky, so backup the aspell la-file somewhere and try one of the following remove from it altogether the reference to libstdc++.la and try again, if this does not help change the whole /usr//xxx/libstdc++.la to be just -lstdc++ and try again and report back ;)
_________________
"I knew when an angel whispered into my ear,
You gotta get him away, yeah
Hey little bitch!
Be glad you finally walked away or you may have not lived another day."
Godsmack
Back to top
View user's profile Send private message
binro
Guru
Guru


Joined: 06 May 2005
Posts: 513
Location: Bangkok, Thailand

PostPosted: Fri Jun 30, 2006 12:29 pm    Post subject: Reply with quote

Removing the reference allowed the compile to continue to completion. Does mean I need a script to remove a string from every file in a directory?
_________________
"Ship me somewheres east of Suez, where the best is like the worst,
Where there ain't no Ten Commandments an' a man can raise a thirst"
from "Mandalay" by Rudyard Kipling
Back to top
View user's profile Send private message
Gergan Penkov
Veteran
Veteran


Joined: 17 Jul 2004
Posts: 1464
Location: das kleinste Kuhdorf Deutschlands :)

PostPosted: Fri Jun 30, 2006 12:37 pm    Post subject: Reply with quote

most probably :)
well essentially this should be resolved from fix_libtool_archives.sh but it seems it does not work.
try some sed script should not be that hard to write :)
_________________
"I knew when an angel whispered into my ear,
You gotta get him away, yeah
Hey little bitch!
Be glad you finally walked away or you may have not lived another day."
Godsmack
Back to top
View user's profile Send private message
binro
Guru
Guru


Joined: 06 May 2005
Posts: 513
Location: Bangkok, Thailand

PostPosted: Fri Jun 30, 2006 3:06 pm    Post subject: Reply with quote

Code:

find /usr/lib  -name '*.la' -exec sed -i 's\/usr/lib/gcc/i686-pc-linux-gnu/4.1.1/4.1.1/libstdc++.la\\g' '{}' ';'   

seemed to do the trick. Note the double "4.1.1", that was an artifact of fix_libtool_files.sh.

As an aside, libstdc++ seems to be so toxic that when you search on it you don't get any hits.
_________________
"Ship me somewheres east of Suez, where the best is like the worst,
Where there ain't no Ten Commandments an' a man can raise a thirst"
from "Mandalay" by Rudyard Kipling
Back to top
View user's profile Send private message
Display posts from previous:   
Reply to topic    Gentoo Forums Forum Index Portage & Programming All times are GMT
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum