DebuggingProgramCrash
Differences between revisions 4 and 5
|
Size: 1071
Comment:
|
Size: 1212
Comment:
|
| Deletions are marked like this. | Additions are marked like this. |
| Line 20: | Line 20: |
| 1. If the output gets very long, you might want to use: {{{ (gdb) set logging output backtrace.txt (gdb) set logging on }}} beforehand. |
Check if the package has a debugging version available. In general, debugging packages will be named with a -dbg suffix
- If not, you can generally* build one this way:
Install the build-time dependencies for the package:
sudo apt-get build-dep <package>
Build .debs for debugging:
DEB_BUILD_OPTIONS="nostrip noopt" sudo apt-get source -b <package>
Install the needed .debs (they will be in the current working directory if the build succeeded):
sudo dpkg --install <package.deb>
Start the program under control of gdb:
gdb <program> (gdb) handle SIG33 pass nostop noprint (gdb) run <arguments, if any>
- The program will start. Perform any actions necessary to reproduce the crash
Retrieve a backtrace of the crash:
(gdb) thread apply all bt
If the output gets very long, you might want to use:
(gdb) set logging output backtrace.txt (gdb) set logging on
beforehand.- Include the complete output from gdb in your bug report
* most of the packages support the build of debugging version in this way. If that doesn't work for a package you can open a bug against it.
DebuggingProgramCrash (last edited 2026-01-27 15:38:17 by sombrafam)