Difference between revisions of "Configure GDB pretty printer for Msys2"

From Code::Blocks
(a new page for configure the pretty printer for msys2)
 
m (fix link format)
Line 37: Line 37:
  
 
=Useful Links=
 
=Useful Links=
[/index.php/topic,23590.msg160735.html#msg160735 forum links]
+
[https://forums.codeblocks.org/index.php?topic=23590.0 Debugger: use gdb python pretty printer for the libstdcxx under msys2]

Revision as of 04:04, 17 April 2022

This is my way to use gdb python pretty printer for the libstdcxx under msys2. Suppose you use 64bit gcc compiler. My msys2 is installed under F:\msys64

In the Menu->Settings->Debugger settings. Open the debugger plugin setting dialog.

Then, in the "Executable path" field, select "F:\msys64\mingw64\bin\gdb.exe" in the "Debugger initialization commands" field, put the following text in the edit control.

source F:\msys64\mingw64\etc\gdbinit

I see that I have to modify the file "F:\msys64\mingw64\etc\gdbinit" file: below is the original code

python
import sys
sys.path.insert(0, sys.path[0] + '/../../gcc-9.2.0/python')
from libstdcxx.v6.printers import register_libstdcxx_printers
end

But you have to add one line before the "end" statement like below to let the register_libstdcxx_printers function get executed.

python
import sys
sys.path.insert(0, sys.path[0] + '/../../gcc-9.2.0/python')
from libstdcxx.v6.printers import register_libstdcxx_printers
register_libstdcxx_printers(None)
end

BTW: It is the same thing to add the python pretty printer for wxWidgets. You can use this file:

https://github.com/wxWidgets/wxWidgets/blob/master/misc/gdb/print.py

Useful Links

Debugger: use gdb python pretty printer for the libstdcxx under msys2