[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