DebuggingProgramCrash

Differences between revisions 7 and 8
Revision 7 as of 2006-03-26 11:49:48
Size: 1220
Editor: rrcs-24-153-226-7
Comment: fixed environmental variable setting, moved sudo to own line
Revision 8 as of 2006-05-01 19:15:57
Size: 860
Editor: ottawa-hs-64-26-167-206
Comment: Add information about debi
Deletions are marked like this. Additions are marked like this.
Line 3: Line 3:
  a. Install the development scripts: {{{
sudo apt-get install devscripts
}}}
Line 11: Line 14:
sudo dpkg --install <package.deb> sudo debi <package*.changes>
Line 13: Line 16:
 1. Start the program under control of `gdb`: {{{
gdb <program>
(gdb) handle SIG33 pass nostop noprint
(gdb) run <arguments, if any>
}}}
 1. The program will start. Perform any actions necessary to reproduce the crash
 1. Retrieve a backtrace of the crash: {{{
(gdb) thread apply all bt }}}

 1. If the output gets very long, you might want to use: {{{
(gdb) set logging file backtrace.txt
(gdb) set logging on
}}} beforehand.

 1. Include the complete output from gdb in your bug report
 1. Now you make get a backtrace: DebuggingProgramCrash/Backtrace.
  1. Check if the package has a debugging version available. In general, debugging packages will be named with a -dbg suffix

  2. If not, you can generally* build one this way:
    1. Install the development scripts:

      sudo apt-get install devscripts
    2. Install the build-time dependencies for the package:

      sudo apt-get build-dep <package>
    3. Build .debs for debugging:

      export DEB_BUILD_OPTIONS="nostrip noopt"
      sudo apt-get source -b <package>
    4. Install the needed .debs (they will be in the current working directory if the build succeeded):

      sudo debi <package*.changes>
  3. Now you make get a backtrace: DebuggingProgramCrash/Backtrace.

* 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.

CategoryDocumentation

DebuggingProgramCrash (last edited 2022-12-20 22:13:06 by sergiodj)