This is the mail archive of the
gcc-help@gcc.gnu.org
mailing list for the GCC project.
Re: g++ 3.1: libstdc++.so.3 problem
- From: Oliver Kullmann <O dot Kullmann at Swansea dot ac dot uk>
- To: Andris Pavenis <andris at hal dot astr dot lu dot lv>
- Cc: <gcc-help at gcc dot gnu dot org>
- Date: Thu, 11 Jul 2002 15:47:42 +0100
- Subject: Re: g++ 3.1: libstdc++.so.3 problem
- Organization: University of Wales Swansea
- References: <Pine.LNX.4.44.0207110953500.5908-100000@hal.astr.lu.lv>
On Thursday 11 July 2002 07:57, you wrote:
> On Tue, 9 Jul 2002, Oliver Kullmann wrote:
> > Hi,
> >
> > I have build gcc 3.1, and mostly it seems to be alright,
> > my programs compile without any messages and most of them
> > also run, except of one, where I get the error message:
> >
> > error while loading shared libraries: libstdc++.so.3: cannot open shared
> > object file: No such file or directory
> >
> > Where should this libstdc++.so.3 be?! It's not in the
> > implementation lib-directory, which only contains
> >
> > gcc-lib libiberty.a libstdc++.so libsupc++.a
> > libgcc_s.so libstdc++.a libstdc++.so.4 libsupc++.la
> > libgcc_s.so.1 libstdc++.la libstdc++.so.4.0.0
> >
> > As I said, the compilation doesn't give any warnings, so it shouldn't
> > be a deprecated header. What is the problem here?!
>
> Perhaps You have some shared library linked with libstdc++.so.3 (compiled
> with gcc-3.0.X). Try using ldd -v ... for executable which requires
> libstdc++.so.3 and find which it is. After that rebuild related package
> with gcc-3.1.
>
> Andris
Might be. I managed to get the links right, but now when running the
program I get
Segmentation fault
(where the program should just output a message to cout).
Running ldd gives
> ldd -v OKgenerator
libstdc++.so.4 => /csoliver/GCC/gcc31/lib/libstdc++.so.4 (0x40029000)
libm.so.6 => /lib/libm.so.6 (0x400d9000)
libgcc_s.so.1 => /csoliver/GCC/gcc31/lib/libgcc_s.so.1 (0x400fb000)
libc.so.6 => /lib/libc.so.6 (0x40104000)
/lib/ld-linux.so.2 => /lib/ld-linux.so.2 (0x40000000)
Version information:
./OKgenerator:
libgcc_s.so.1 (GCC_3.0) =>
/csoliver/GCC/gcc31/lib/libgcc_s.so.1
libc.so.6 (GLIBC_2.0) => /lib/libc.so.6
/csoliver/GCC/gcc31/lib/libstdc++.so.4:
libgcc_s.so.1 (GCC_3.0) =>
/csoliver/GCC/gcc31/lib/libgcc_s.so.1
libc.so.6 (GLIBC_2.2) => /lib/libc.so.6
libc.so.6 (GLIBC_2.1.3) => /lib/libc.so.6
libc.so.6 (GLIBC_2.1) => /lib/libc.so.6
libc.so.6 (GLIBC_2.0) => /lib/libc.so.6
/lib/libm.so.6:
libc.so.6 (GLIBC_2.1.3) => /lib/libc.so.6
libc.so.6 (GLIBC_2.0) => /lib/libc.so.6
/csoliver/GCC/gcc31/lib/libgcc_s.so.1:
libc.so.6 (GLIBC_2.1.3) => /lib/libc.so.6
libc.so.6 (GLIBC_2.0) => /lib/libc.so.6
/lib/libc.so.6:
ld-linux.so.2 (GLIBC_2.1.1) => /lib/ld-linux.so.2
ld-linux.so.2 (GLIBC_2.2.3) => /lib/ld-linux.so.2
ld-linux.so.2 (GLIBC_2.1) => /lib/ld-linux.so.2
ld-linux.so.2 (GLIBC_2.2) => /lib/ld-linux.so.2
ld-linux.so.2 (GLIBC_2.0) => /lib/ld-linux.so.2
where
/csoliver/GCC/gcc31/
is the implementation directory. Now I don't know how to
interprete this?!
Previously, one gcc 2.95.3 has been installed in the machine.
So there shouldn't be anything else (except the new installation).
Perhaps the problems are caused by
lib/libc.so.6
or
lib/ld-linux.so.2
?!
Oliver