testsuite linking wrong libstdc++

Nathan Sidwell nathan@codesourcery.com
Wed Apr 11 02:48:00 GMT 2001


Hi,
I've got a strange thing happening with the g++ testsuite, which manifests
itself when new entry points are added to libsupc++, in this case
cxa_allocate_exception. this is on a i686-pc-linux-gnu system.

brendan/eh1.C was the first program to show this problem
nathan@uha:64>g++-brendan-eh1-C  
g++-brendan-eh1-C: error in loading shared libraries: g++-brendan-eh1-C: undefined symbol: __cxa_allocate_exception

It appears that the executable has dependencies on the wrong libstdc++, vis
nathan@uha:65>ldd g++-brendan-eh1-C
        libstdc++.so.3 => /home/nathan/local/unknown-i686-Linux-2/egcs-devel/lib/libstdc++.so.3 (0x40015000)
        libm.so.6 => /lib/libm.so.6 (0x40094000)
        libgcc_s.so.0 => /home/nathan/local/unknown-i686-Linux-2/egcs-devel/lib/libgcc_s.so.0 (0x400b1000)
        libc.so.6 => /lib/libc.so.6 (0x400bb000)
        /lib/ld-linux.so.2 => /lib/ld-linux.so.2 (0x40000000)

(those egcs-devel directories are a snapshot, not the current build tree, in
my directory heirarchy)

It's finding those because my LD_LIBRARY_PATH points there, vis
nathan@uha:1>echo $LD_LIBRARY_PATH 
/home/nathan/local/unknown-i686-Linux-2/egcs-devel/lib:/home/nathan/local/unknown-i686-Linux-2/lib:/home/nathan/local/lib:/usr/local/lib:/opt/office/lib:/usr/X11R6/lib

I can get this to work by unsetting LD_LIBRARY_PATH for the tests, however ...
it would be more friendly for this to just work. Should not the testsuite
either unset LD_LIBRARY_PATH, or prepend the correct directory so that it's
found first. 


nathan

-- 
Dr Nathan Sidwell   ::   http://www.codesourcery.com   ::   CodeSourcery LLC
         'But that's a lie.' - 'Yes it is. What's your point?'
nathan@codesourcery.com : http://www.cs.bris.ac.uk/~nathan/ : nathan@acm.org



More information about the Gcc-bugs mailing list