bug-gnu-utils
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Bug in ld 2.11.90.0.29


From: Alan Modra
Subject: Re: Bug in ld 2.11.90.0.29
Date: Fri, 7 Sep 2001 20:29:21 +0930
User-agent: Mutt/1.3.17i

On Wed, Sep 05, 2001 at 12:18:14PM -0700, Russ wrote:
> 
> /usr/bin/ld: BFD internal error, aborting at ../../bfd/elf32-i386.c line 
> 1750 in elf_i386_relocate_section

This is a tricky one.  Code starting at line 1722,

                  name = (bfd_elf_string_from_elf_section
                          (input_bfd,
                           elf_elfheader (input_bfd)->e_shstrndx,
                           elf_section_data (input_section)->rel_hdr.sh_name));
                  if (name == NULL)
                    return false;

gets the name of the reloc section associated with "input_section", but
a little later,

                  sreloc = bfd_get_section_by_name (dynobj, name);
                  if (sreloc == NULL)
                    abort ();

we abort when we can't find it in dynobj.  Earlier, in elf_i386_check_relocs,
around line 766, we should have created the reloc section.  Which means
we must have decided the reloc section wasn't needed, and stripped it
in elf_i386_size_dynamic_sections around line 1369.  So...  I'd like to
know some more details about exactly what caused the problem.  Can you
fire up "gdb /usr/bin/ld", "set args ..." as for the failing run, put a
breakpoint on line 1750, then report the results of "p *h" ?
"p input_section->name" and "p input_section->owner->filename" might be
useful too.

Alan Modra




reply via email to

[Prev in Thread] Current Thread [Next in Thread]