This is the mail archive of the
binutils@sourceware.cygnus.com
mailing list for the binutils project.
Re: bfd assertion fail elflink.h:1566
- To: Ian Lance Taylor <ian at zembu dot com>
- Subject: Re: bfd assertion fail elflink.h:1566
- From: Patrik Hagglund <patha at ida dot liu dot se>
- Date: Thu, 21 Oct 1999 19:49:59 +0200
- cc: binutils at sourceware dot cygnus dot com, biedie at my-Deja dot com
> I've appended the patch.
>
> Using Sun's ld gives the following error messages:
>
> ld: Software Generation Utilities - Solaris/ELF (3.0)
> ld: warning: file ./libgcj.so: section .stabstr: malformed string table, initial or final byte
> ld: warning: file ./libgcjgc.so: section .stabstr: malformed string table, initial or final byte
> ld: warning: file ./libzgcj.so: section .stabstr: malformed string table, initial or final byte
>
> I'm not sure what's up with this. I very much doubt that it is
> related to the assertion failure.
>
> Were those shared libraries created by the GNU linker? What is the
> initial and final byte of the .stabstr section in those files? (You
> can get this using objdump -s -j .stabstr). If you create the files
> using the Solaris linker, what is the initial and final byte of the
> .stabstr section? (You may need to use a special option to force the
> Solaris linker to create a .stabstr section rather than leaving the
> stabs information in the .o files). Perhaps the Solaris linker
> expects something which the GNU linker simply isn't doing.
>
> Ian
Sorry for my delayed response.
Thanks for the patch.
The files where assembled and linked with binutils-991002
(gcc-2.95.1). Here is the output from `objdump -s -j .stabstr
libgcj.so':
libgcj.so: file format elf32-sparc
Contents of section .stabstr:
0000 7072696d 732e6363 002f686f 6d652f70 prims.cc./home/p
[...]
b5880 646c6572 3a472831 2c313729 00 dler:G(1,17).
And with Sun as and ld:
libgcj.so: file format elf32-sparc
Contents of section .stabstr:
0000 00707269 6d732e63 63002f68 6f6d652f .prims.cc./home/
[...]
215740 743a5328 302c3129 0000 t:S(0,1)..
Seems to be an extra 0-byte at each end.
--
Patrik Hägglund