GDB variants accepting plugins (to the debugger) ?
Simon Marchi
simark@simark.ca
Fri Jan 30 15:35:58 GMT 2026
On 2026-01-30 08:33, Eli Zaretskii via Gdb wrote:
>> From: Basile Starynkevitch <basile@starynkevitch.net>
>> Cc: team@refpersys.org
>> Date: Fri, 30 Jan 2026 14:13:51 +0100
>>
>> I am using GDB-17.1 on Linux/Debian/x86-64 to debug a C++ coded, GPL licensed, inference engine
>>
>>
>> Is there any GDB variant accepting plugins to the debugger process
>> (these could be definitely useful to display C++ data in a nice way, std::vector or std::map instances come to mind immediately).
>>
>> I do know that GDB accept eg Guile or Python scripts.
>> But coding manually a Python or Guile function for every important C++ classes of a software is very time consuming
>
> Did you read the node "Auto-loading extensions" in the GDB manual?
> GDB installs such an auto-loaded extension for standard C++ classes,
> which actually uses printers.py provided by GCC/libstdc++
> distribution. But you can use the same mechanism to provide
> extensions for your classes, if needed.
Here's the file Eli is referring to, for libstdc++:
https://gcc.gnu.org/git/?p=gcc.git;a=blob;f=libstdc%2B%2B-v3/python/libstdcxx/v6/printers.py;hb=HEAD
And here is the API it uses:
https://sourceware.org/gdb/current/onlinedocs/gdb.html/Pretty-Printing.html
Simon
More information about the Gdb
mailing list