This is the mail archive of the
mailing list for the GDB project.
Re: DSO with relocations and GDB.
On 4/18/08, Daniel Jacobowitz <firstname.lastname@example.org> wrote:
> On Fri, Apr 18, 2008 at 03:50:00PM -0700, Ananth Sowda wrote:
> > The powerpc eabi DSO (dynamic shared object) I'm debugging using GDB
> > 6.6 has .debug_info and other debug tables which have unresolved
> > relocations. The .rela_debug_info is available in the DSO and it has
> > sh_link set to .symtab, sh_info to .debug_info. However, the bfd code
> > in GDB 6.6 does not seem to associate the .debug_info with
> > corresponding .rela_debug.info section. When GDB attempts to relocate
> > these debug tables, bfd does not recognize that the section has
> > relocations.
> What does objdump -h say about this file? IOW, what do you mean by
> "does not seem to associate"?
BFD internal section data structure for .debug_info section is not
marked with SEC_RELOC in flags and number of relocation records for
the section is 0. objdump -h output shows that sh_link(points to
.symtab) and sh_link(points to .debug_info) are set correctly for the
> GDB is supposed to handle this case correctly. However, we've also
> pretty well established that the linker is wrong to emit such
> relocations; if you have the option of using a different linker
> version which does not do so, I recommend it.
I agree using a linker which resolves the relocations fixes the problem.