A strang symbol versioning problem

H. J. Lu hjl@lucon.org
Sat Aug 10 15:06:00 GMT 2002


On Sat, Aug 10, 2002 at 03:30:20AM -0400, Jack Howarth wrote:
> Franz and HJ,
>     Using the new binutils 2.13.90.0.3, I rebuilt glibc 2.2.5 with
> Franz's glibc-libgcc-compat-ppc-5a and glibc-libgcc-compat-ppc-8-2_2c
> under gcc 2.95.4. I then installed this glibc and tried to rebuild
> libeel 2.0.3. Unfortunately I am still seeing the same failure...
> 
> gcc -g -O2 -o .libs/check-program check-program.o  ./.libs/libeel-2.so -L/usr/X11R6/lib /usr/lib/libgailutil.so /usr/lib/libgnomeui-2.so -L/usr/lib -lSM -lICE /usr/lib/libbonoboui-2.so /usr/lib/libgnomecanvas-2.so /usr/lib/libgnome-2.so /usr/lib/libesd.so
> /lib/libgcc_s.so.1(*IND*+0x0): multiple definition of `__divdi3@GLIBC_2.0'
> /lib/libc.so.6(.text+0xa40): first defined here
> /lib/libgcc_s.so.1(*IND*+0x0): multiple definition of `__umoddi3@GLIBC_2.0'
> /lib/libc.so.6(.text+0xbac): first defined here
> /lib/libgcc_s.so.1(*IND*+0x0): multiple definition of `__udivdi3@GLIBC_2.0'
> /lib/libc.so.6(.text+0xb88): first defined here
> /lib/libgcc_s.so.1(*IND*+0x0): multiple definition of `__moddi3@GLIBC_2.0'
> /lib/libc.so.6(.text+0xb08): first defined here
> 
> So the change in binutils appears insufficient to resolve this problem.
>                                      Jack

Here is a small testcase

# make
gcc  -B./ -g -fPIC   -c -o foo.o foo.c
gcc: file path prefix `./' never used
gcc  -B./ -g -fPIC   -c -o new.o new.c
gcc: file path prefix `./' never used
gcc  -B./ -Wl,--version-script=bar.map  -shared -o libnew.so new.o
gcc: file path prefix `./' never used
gcc  -B./ -shared -o libfoo.so -Wl,-rpath,. foo.o libnew.so
gcc: file path prefix `./' never used
gcc  -B./ -g -fPIC   -c -o old.o old.c
gcc: file path prefix `./' never used
gcc  -B./ -Wl,--version-script=bar.map  -shared -o libold.so old.o
gcc: file path prefix `./' never used
gcc  -B./ -o main -Wl,-rpath,. main.c libfoo.so libold.so new.o
./libnew.so(*IND*+0x0): multiple definition of `bar@VERS.0'
libold.so(.text+0x12c): first defined here
collect2: ld returned 1 exit status
gcc: file path prefix `./' never used
make: *** [main] Error 1

I will see what I can do.

H.J.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: bug.tar.gz
Type: application/x-gzip
Size: 600 bytes
Desc: not available
URL: <https://sourceware.org/pipermail/binutils/attachments/20020810/11afa2da/attachment.bin>


More information about the Binutils mailing list