libgcj.so: undefined reference to _Unwind_FindEcnlosingFunction@GCC_3.3
Andrew Haley
aph@redhat.com
Wed Apr 9 13:19:00 GMT 2003
Hans Van Wesenbeeck writes:
> Despite consultation of the FAQ where the installation of multiple
> versions of gcc alongside each other is discussed, I keep running into
> this problem with recent gcj snapshots:
>
> On a fresh RH8 installation, just with RH8 distribution's gcc3.2
> appointed, after building gcc with the options:
> --prefix=/usr/local/gcc/3.3/20030331 --enable-languages=c,c++,java
> --enable-threads=posix. The LD_LIBRARY_PATH & LD_RUN_PATH env vars are
> not set.
>
> When I try to link my application, this time with the snapshot gcc
> version upfront on my PATH, with LD_LIBRARY_PATH pointing to the
> snapshot's lib directory, ld reports:
> /usr/local/gcc/3.3/20030331/lib/gcc-lib/i686-pc-linux-gnu/3.3/../../../libgcj.so: undefined reference to `_Unwind_FindEnclosingFunction@GCC_3.3'.
>
> Sofar, the only way I have been able to link my app successfully, is to
> install the snapshot to /usr using --prefix=/usr, obviously a recipe for
> trouble.
>
> It seems that, no matter what, libgcj.so keeps referring to an old
> version of libgcc_s.so, regardless the configuration options of the gcc
> build, regarding the value of PATH and LD_LIBRARY_PATH environment
> variables. Forcing the situation with symlinks does not seem to help.
This is very weird. It looks like you might have picked up an RPATH
from somewhere. This might be a libtool bug.
What does
readelf -d /usr/local/gcc/3.3/20030331/lib/gcc-lib/i686-pc-linux-gnu/3.3/../../../libgcj.so
look like on your system?
What about
ldd /usr/local/gcc/3.3/20030331/lib/gcc-lib/i686-pc-linux-gnu/3.3/../../../libgcj.so
Andrew.
More information about the Java
mailing list