All of lore.kernel.org
 help / color / mirror / Atom feed
* [Buildroot] [PATCH 0/3] Fix gdb pretty printers for libstdcxx
@ 2021-06-08 13:06 Thomas De Schampheleire
  2021-06-08 13:06 ` [Buildroot] [PATCH 1/3] package/gdb: fix gdb 9.2 segfault with Python 3.9 support Thomas De Schampheleire
                   ` (2 more replies)
  0 siblings, 3 replies; 5+ messages in thread
From: Thomas De Schampheleire @ 2021-06-08 13:06 UTC (permalink / raw)
  To: buildroot

From: Thomas De Schampheleire <thomas.de_schampheleire@nokia.com>

Hello,

This series fixes the gdb pretty printers for libstdcxx, provided by gcc.

Patch 1 fixes a segfault in gdb 9.2 when Python 3 support is enabled. The fix is
already present in gdb 10.1+.

Patch 2 makes sure that the auto-load file provided by gcc for libstdcxx
pretty-printers, is using valid paths, rather than the paths the external
toolchain was built with.

Finally, patch 3 makes sure that gdb will actually load the fixed auto-load
file, by adding the buildroot sysroot as a 'safe path' in gdbinit.


After this series, it suffices to start up gdb, load the buildroot-provided
gdbinit file, and start debugging a binary. From the moment libstdcxx.so is
loaded, gdb will automatically load the pretty-printer file. Printing C++ STL
objects like std::map, std::vector, etc. will now be shown in the 'pretty'
manner. In order to show the 'raw' object without pretty-printing, use the '/r'
modifier to the 'print' command.

Note: the pretty-printing logic is written in Python, so Python support for
host-gdb needs to be enabled.

Best regards,
Thomas



Thomas De Schampheleire (3):
  package/gdb: fix gdb 9.2 segfault with Python 3.9 support
  toolchain/toolchain-external: fixup gdb pretty-printer loader for
    libstdcxx
  toolchain: mark sysroot as 'safe' path for gdb auto-load

 ...x-Python3.9-related-runtime-problems.patch | 227 ++++++++++++++++++
 toolchain/helpers.mk                          |   3 +-
 .../pkg-toolchain-external.mk                 |  21 ++
 3 files changed, 250 insertions(+), 1 deletion(-)
 create mode 100644 package/gdb/9.2/0007-Fix-Python3.9-related-runtime-problems.patch

-- 
2.26.3

^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2021-06-08 13:54 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-06-08 13:06 [Buildroot] [PATCH 0/3] Fix gdb pretty printers for libstdcxx Thomas De Schampheleire
2021-06-08 13:06 ` [Buildroot] [PATCH 1/3] package/gdb: fix gdb 9.2 segfault with Python 3.9 support Thomas De Schampheleire
2021-06-08 13:06 ` [Buildroot] [PATCH 2/3] toolchain/toolchain-external: fixup gdb pretty-printer loader for libstdcxx Thomas De Schampheleire
2021-06-08 13:54   ` Thomas De Schampheleire
2021-06-08 13:06 ` [Buildroot] [PATCH 3/3] toolchain: mark sysroot as 'safe' path for gdb auto-load Thomas De Schampheleire

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.