[ros-dev] Proposal to change .sym files

Anich Gregor blight at blight.eu.org
Wed Jan 12 19:30:00 CET 2005


On Tuesday 11 January 2005 21:44, Ge van Geldorp wrote:
> > From: art yerkes
> >
> > On Tue, 11 Jan 2005 16:43:17 +0100
> >
> > Hartmut Birr <hartmut.birr at gmx.de> wrote:
> > > I would like it if we can add the sym files as a no-load
> > > section to each binary. This protects from using wrong
> > > symbol files and does help for some binaries like
> > > packet.sys and packet.dll.
> >
> > I agree that i like symbols better in their binaries than out.
>
> Hmm, maybe we should just use the *.nostrip.* stuff then and possibly
> convert at runtime? It doesn't make much sense to me to first create a
> stripped version and then add back the symbols.
>
> Ge van Geldorp.

Converting at runtime could be slow, but we definitly have to convert them 
into a format which we can save as one large block in memory (and not 
thousands of small blocks) and easily parse at runtime.

What about using GNU debuglinks? It works like this:

You create the binary with debug info. Then you copy the debug info from the 
binary into a debug/symbol file. The next step is to strip the debug info 
from the binary and at the same time add a debug link to the debug file.
The debug link is a section in the binary (which can be added with objdump 
when stripping debug info from the binary) called .gnu_debuglink. It must 
contain the filename of the debug file (zero-terminated) and (aligned to 4 
bytes) the CRC of the debug file (which makes sure that correct symbols will 
be used with the binary)
GNU binutils support it so it's easy to create the symbol files and add the 
debug links to the binaries.

 - blight


More information about the Ros-dev mailing list