V2 Add DWARF support to the rtemstoolkit and put it to use.
Chris Johns
chrisj at rtems.org
Tue May 8 05:09:37 UTC 2018
Hi,
This is a wrap up patch of all the issues that have been raise. Thanks to
the excellent debugging and teamwork in finding the linking issue on Linux,
that is a really strange one to trip over.
The patches:
- Add a DWARF framework to the rtemstoolkit to access the
source file and line given an address in an executable. This allows
us to remove exec'ing addr2line in covoar.
- Add producer support to rtems-exe-info to list the compilers used
to build the executables plus list the common flags and optionally
list all the object files with the flags that are not common.
- Clean up exception handling in destructors in some places. This
avoids a terminate if an exception is thrown in an exception
unwind.
Changes since v1:
- Fix rld::path::path_abs() to not walk above the root directory.
- Fix a memory issue with the dwarf_srcfiles(). The libdwarf we are
using manages all memory and does not need to have it dealloced
while the man pages state it should be.
- Add producer support to collect and manage CU producer attributes.
- Remove libgen.h from covoar and use RLD path. I have not tested
those changes.
I recommend anyone shipping RTEMS executables to run rtems-exe-info over
your executables and have a look. It will let you know if you are using
the same compiler in all parts as well as listing the machine flags
used to control GCC.
Chris
More information about the devel
mailing list