Hi all,
I wonder if someone has an explanation
My problem is that I cannot run executables loading private
*debug* shared libraries
with Slackware3.4+glibc2.06, though the same load & run perfectly
with RedHat5.0(+glibc2.05).
context 1:
---------
Slackware 3.4 distrib
+ glibc 2.0.6 installed as primary according to glibc2-HOWTO
+ gcc2.8.0
Any exec built with a private debug shared libs won't load.
the private debug shared lib is build with -g -fPIC switches of gcc
then ld -shared -o <lib.so> <list of .o>
demopc:sr(devlinux2)> ldd ./x_d
libtry_d.so => /m/dev/linux2/lib/libtry_d.so (0x40000000)
libpthread.so.0 => /lib/libpthread.so.0 (0x4017a000)
libc.so.6 => /lib/libc.so.6 (0x40187000)
/lib/ld-linux.so.2 => /lib/ld-linux.so.2 (0x00000000)
demopc:sr(devlinux2)>
demopc:sr(devlinux2)> ./x_d
BUG IN DYNAMIC LINKER ld.so: ../sysdeps/i386/dl-machine.h: 291:
elf_machine_rel: Assertion `! "unexpected dynamic reloc type"' failed!
demopc:sr(devlinux2)>
If I statically link ./x_d (no libtry_d.so), no problem.
context2:
---------
on a RedHat 5.0 distrib (with glibc 2.0.5) + gcc 2.8.0
./x_d loads and runs ok.
Thanks in advance,
Stephane Rouberol