From b44d3aa84fdaa5d64f6a6fa184627f1bfffcecda Mon Sep 17 00:00:00 2001 From: Phil Muldoon Date: Thu, 8 Oct 2009 08:27:24 +0000 Subject: debug.xml: Rewrite and expand GDB Python pretty-printer section. 2009-10-07 Phil Muldoon * doc/xml/manual/debug.xml: Rewrite and expand GDB Python pretty-printer section. From-SVN: r152554 --- libstdc++-v3/doc/xml/manual/debug.xml | 56 ++++++++++++++++++++++++++++------- 1 file changed, 46 insertions(+), 10 deletions(-) (limited to 'libstdc++-v3/doc') diff --git a/libstdc++-v3/doc/xml/manual/debug.xml b/libstdc++-v3/doc/xml/manual/debug.xml index 5648ba5..ca09126 100644 --- a/libstdc++-v3/doc/xml/manual/debug.xml +++ b/libstdc++-v3/doc/xml/manual/debug.xml @@ -219,16 +219,52 @@ - GDB 7.0 will include support for writing pretty-printers in Python. - A library of printers for STL classes already exists within the - libstdc++ svn repository. For information on enabling these printers, - and for other GDB STL support options: please see - "GDB Support - for STL" in the GDB wiki. Additionally, in-depth - documentation and discussion of this feature can be found in the GDB - manual. Please see: - - "23.2.2.6 Pretty Printing" + Starting with version 7.0, GDB includes support for writing + pretty-printers in Python. Pretty printers for STL classes are + distributed with GCC from version 4.5.0. The most recent version of + these printers are always found in libstdc++ svn repository. + To enable these printers, check-out the latest printers to a local + directory: + + + + svn co svn://gcc.gnu.org/svn/gcc/trunk/libstdc++-v3/python + + + + Next, add the following section to your ~/.gdbinit The path must + match the location where the Python module above was checked-out. + So if checked out to: /home/maude/gdb_printers/, the path would be as + written in the example below. + + + + python + import sys + sys.path.insert(0, '/home/maude/gdb_printers/python') + from libstdcxx.v6.printers import register_libstdcxx_printers + register_libstdcxx_printers (None) + end + + + + The path should be the only element that needs to be adjusted in the + example. Once loaded, STL classes that the printers support + should print in a more human-readable format. To print the classes + in the old style, use the /r (raw) switch in the print command + (i.e., print /r foo). This will print the classes as if the Python + pretty-printers were not loaded. + + + + For additional information on STL support and GDB please visit: + "GDB Support + for STL" in the GDB wiki. Additionally, in-depth + documentation and discussion of the pretty printing feature can be + found in "Pretty Printing" node in the GDB manual. You can find + on-line versions of the GDB user manual in GDB's homepage, at + "GDB: The GNU Project + Debugger" . -- cgit v1.1