Stack Trace
From GnuCash
What is a Stack Trace?
If GnuCash terminates abnormally (i. e. it crashes), then a stack trace is a very helpful information for the developers to figure out the program error that caused this crash.
How to obtain a Stack Trace
Other explanations on how to obtain stack traces:
- http://live.gnome.org/GettingTraces
- http://www.dirac.org/linux/gdb/06-Debugging_A_Running_Process.php
- (in German) http://www.linuxwiki.de/gdb
Attach gdb to running process
The program "gnucash" itself is not an executable but a script. Therefore it cannot be called directly by the gdb debugger. We propose to "attach" the gdb to the running gnucash process instead.
To attach to the running gnucash process:
- Start gnucash normally
- Use "ps afx" to find out the process number (PID) of the running gnucash process; it might be called "gnucash" or "guile", I'm not sure. Say the PID is 12345.
- Start gdb by typing "gdb"
- Attach to the running process by typing "attach 12345"; gdb will temporarily stop the program
- Continue program execution by typing "continue" at the gdb prompt
- Provoke the crash; type "backtrace" or shorthand "bt" at the gdb prompt.
Please submit the backtrace together with the instructions on how to reproduce this crash as a new bug report into Bugzilla. Thank you for your contribution.