[Python-Dev] Decoding libpython frame information on the stack
skip at pobox.com
skip at pobox.com
Thu Jun 28 18:00:14 CEST 2007
>> Am a new subscriber to this list. Am facing an issue in deciphering
>> core-files of applications with mixed C and libpython frames in it.
>> I was thinking of knowing any work that has been done with respect to
>> getting into the actual python line (file-name.py:<line number>) from
>> the libpython frames on the stack while debugging such core-files. If
>> anybody knows some information on this, please let me know. I could
>> not get any link on the web that talks about this feature.
Sorry, I missed this the first time round and just saw Dustin's reply. The
Python distribution comes with a gdbinit file in the Misc directory. I use
it frequently to display Python stack traces from within GDB. Here's the
most recent copy online:
http://svn.python.org/view/python/trunk/Misc/gdbinit?view=markup
The following commands are implemented:
pystack - display the full stack trace
pystackv - as above, but also display local variables
pyframe - display just the current frame
pyframev - as above, but also display local variables
up, down - move up or down one C stack frame, but display Python
frame if you move into PyEval_EvalFrame
This should all work within active sessions and sessions debugging core
files (e.g., no active process).
It needs some rework. For instance, it assumes you're running within Emacs
and puts out lines gud can use to display source lines. These look a little
funky when debugging from a terminal window.
Skip
More information about the Python-Dev
mailing list