Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 6267 - KDE/QT appear to depend on libstdc++.so.4 (from gcc 3.1?)
Summary: KDE/QT appear to depend on libstdc++.so.4 (from gcc 3.1?)
Status: RESOLVED INVALID
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: [OLD] GCC Porting (show other bugs)
Hardware: x86 Linux
: High normal (vote)
Assignee: Gentoo KDE team
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2002-08-09 17:16 UTC by Shahar Goldin
Modified: 2003-02-04 19:42 UTC (History)
2 users (show)

See Also:
Package list:
Runtime testing required: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Shahar Goldin 2002-08-09 17:16:20 UTC
after installing gcc3.2pre, and removing gcc3.1,
kde failed to um
Work.
complaining of a missing libstdc++

recompiling kdelib failed because some QT binary was complaining of a missing
libstdc++
recompiling QT failed :
/usr/qt/3/bin/moc: error while loading shared libraries: libstdc++.so.4: cannot ope
n shared object file: No such file or directory
/usr/qt/3/bin/moc: error while loading shared libraries: libstdc++.so.4: cannot ope
n shared object file: No such file or directory
Comment 1 Matthew Kennedy (RETIRED) gentoo-dev 2002-08-09 20:02:28 UTC
You probably need to recompile every C++ based application on your system, as
the C++ ABI changed between 3.1 and 3.2 (I believe). That includes both QT and
KDE as well as any affected dependency.
Comment 2 Shahar Goldin 2002-08-11 11:45:33 UTC
Sorry, I got the wrong error message
heh
/var/tmp/portage/qt-3.0.5/work/qt-x11-free-3.0.5/bin/uic: error while loading
shared libraries: libstdc++.so.4: cannot open shared object file: No such file
or directory
make[3]: *** [dbconnections.h] Error 127
make[3]: *** Waiting for unfinished jobs....
/var/tmp/portage/qt-3.0.5/work/qt-x11-free-3.0.5/bin/uic: error while loading
shared libraries: libstdc++.so.4: cannot open shared object file: No such file
or directory
make[3]: *** [dbconnection.h] Error 127
make[3]: Leaving directory
`/var/tmp/portage/qt-3.0.5/work/qt-x11-free-3.0.5/tools/designer/designer'
make[2]: *** [sub-designer] Error 2
make[2]: Leaving directory
`/var/tmp/portage/qt-3.0.5/work/qt-x11-free-3.0.5/tools/designer'
make[1]: *** [sub-designer] Error 2
make[1]: Leaving directory `/var/tmp/portage/qt-3.0.5/work/qt-x11-free-3.0.5/tools'
make: *** [sub-tools] Error 2

!!! ERROR: The ebuild did not complete successfully.
From what I can tell its trying to run something it compiled 
any ideas?
Comment 3 Shahar Goldin 2002-08-15 13:43:57 UTC
I'm gonna re-bootstrap with gcc3.2 and assume this is fixed
I think its pretty safe to consider this closed and just make sure people 
bootstrap with the compiler they plan to use

ok by you?
Comment 4 Daniel Mettler 2002-08-22 19:15:16 UTC
note: i completely rebuilt my system with gcc 3.2, going from 1.3b (default-1.0-gcc3) with gcc 3.1/3.1.1/3.2_pre to profile default-x86-2.0. i did it the way spider recommended it.   problem: even if compiled with gcc 3.2 (verified), kde (tested with 3.0.3, i  guess it's the same for previous versions) uses libstdc++.so.4 which is  no longer available in gcc 3.2 (instead there is libstdc++.so.5).    kde searches for libstdc++.so.4 in the following order:    /usr/kde/3/lib/libstdc++.so.4  /usr/lib/gcc-lib/i686-pc-linux-gnu/3.2/libstdc++.so.4  /usr/qt/3/lib/libstdc++.so.4  /usr/X11R6/lib/libstdc++.so.4  /usr/lib/libstdc++.so.4  /lib/i686/mmx/libstdc++.so.4  /lib/i686/mmx  /lib/i686/libstdc++.so.4  /lib/i686  /lib/mmx  /lib/libstdc++.so.4  /lib  /usr/lib/i686/mmx/libstdc++.so.4  /usr/lib/i686/mmx  /usr/lib/i686/libstdc++.so.4  /usr/lib/i686  /usr/lib/mmx/libstdc++.so.4  /usr/lib/mmx  /usr/lib/libstdc++.so.4  /usr/lib    and does not find it in any of these locations. consequently, none of the kde-apps work.    workaround (assumed there still is a gcc 3.1.1):    ln -s /usr/lib/gcc-lib/i686-pc-linux-gnu/3.1.1/libstdc++.so.4.0.1  /usr/lib/libstdc++.so.4  (setting in /etc/env.d/05gcc:  LDPATH=/usr/lib/gcc-lib/i686-pc-linux-gnu/3.1.1:/usr/lib/gcc-lib/i686-pc-linux-gnu/3.2  and executing  env-update  does not seem to be sufficient for kde-apps)  (on my box gcc 3.1.1 did not get erased by 'emerge clean' after  recompiling world with gcc 3.2)   this does not look like a nice solution, but at least it works for now.    mozilla, nt etc. have basically the same problem as kde thus this looks like a general c++ apps linking issue (though the different c++ apps i have tested seem to handle this inconsistently). probably due to building these apps by upgrading from gentoo 1.3b (and lower?) to default-x86-2.0 (particularly rebuilding from gcc-3.1.1?). hmm.. imho these apps should be convinced to always use libstdc++.so.5 from gcc 3.2 when building with gcc 3.2. unfortunately, i can't verify how all this happened atm.  btw. if there are troubles with c++ apps (e.g. scrollkeeper) i suppose it might be related to this stuff. 
Comment 5 Daniel Mettler 2002-08-22 19:16:59 UTC
urgh, konqueror has messed up my comment... sorry guys 
Comment 6 Daniel Mettler 2002-08-22 19:35:31 UTC
interesting: http://www.visi.com/~barr/ldpath.html 
Comment 7 Matthew Kennedy (RETIRED) gentoo-dev 2002-08-24 01:53:54 UTC
did you recompile xfree?
Comment 8 Rigo 2002-08-24 04:28:40 UTC
And a: 
ln -s /usr/lib/gcc-lib/i686-pc-linux-gnu/3.2/libstdc++.so.5      
      /usr/lib/gcc-lib/i686-pc-linux-gnu/3.2/libstdc++.so.4 ?

Does that help ?

Regards, Rigo
Comment 9 Daniel Mettler 2002-08-24 05:45:24 UTC
matthew: yes, i did recompile xfree too (verified).

rigo: i've tried that already. no, it does not work (lots of error messages,
probably due to c++ abi changes). but my proposed workaround works (thus the c++
apps are running now and i have not noticed any drawbacks so far). nevertheless
it is rather "fighting the symptoms" than solving the problem at its source.
Comment 10 Dan Armak (RETIRED) gentoo-dev 2002-09-15 04:33:12 UTC
Actually it's a lot easier and error-free to build  new gcc3.2 system than to 
upgrade an old gcc-3.1.x one. Just make a chroot, compile everything you need 
as you have time, then copy over your settings, backup the old system if you 
want and boot the new one. 
 
It seems more upgrades fail than not. And eventually you end up recompiling all 
your C++ apps anyway, which would have been cleaner and simpler in a new 
system. 
Comment 11 Dan Armak (RETIRED) gentoo-dev 2002-09-15 05:04:52 UTC
http://www.gentoo.org/~carpaski/system_update/ - unofficial instructions and 
helper scripts for gcc upgrades. HTH... 
Comment 12 Nick 2002-09-21 11:04:49 UTC
this happens when upgrading from 2.95.3 as well

however it looks for libstdc++-libc6.2-2.so.3

just some food for thought :)
Comment 13 Dan Armak (RETIRED) gentoo-dev 2002-09-22 12:39:49 UTC
Can I close this as per my two comments nos. 10, 11? If not it shouldn't be 
assigned to kde@gentoo.org. 
Comment 14 Matthew Kennedy (RETIRED) gentoo-dev 2002-09-22 17:39:48 UTC
dan, i think you should close it. i think this is just another case of a broken
system from the upgrade to gcc3.[12]
Comment 15 Dan Armak (RETIRED) gentoo-dev 2002-09-25 04:30:28 UTC
Agreed.