Да, вы можете делать такие вещи:
(gdb) print PyRun_SimpleString("import traceback; traceback.print_stack()")
File "<string>", line 1, in <module>
File "/var/tmp/foo.py", line 2, in <module>
i**2
File "<string>", line 1, in <module>
$1 = 0
Также должна быть возможность использовать команду pystack
, определенную в файле python gdbinit , но она не работает для меня. Это обсуждается здесь , если вы хотите посмотреть на это.
Также, если вы подозреваете проблемы с памятью, стоит отметить, что вы можете использовать valgrind
с python, если вы готовы перекомпилировать его. Процедура описана здесь .