Debugging Bluefish

From Bluefish Wiki
Jump to navigation Jump to search

Howto provide Bluefish debugging information

For a specific release

  • get the source of this release

For the latest development release

  • get the latest cvs release (info on the development page) if the latest stable release is already some months old

Compile with debugging output

  • use ./configure --with-debugging-output
  • make clean
  • make

do not run make install* since it strips the debugging symbols from the executable

Run Bluefish in the debugger

use 'gdb src/bluefish' to run bluefish in the debugger, do not* run gdb bluefish or gdb /usr/local/bin/bluefish since these binaries do not have any debugging symbols anymore

  • type 'r' to start
  • reproduce the crash
  • copy & paste the last 50 lines of debugging output to an email
  • type 'bt' to get the backstrace info, and copy it also to the mail (if it is over 50 lines, the first lines of the backtrace info are the most interesting)
  • send the mail to the general address, the mailinglist or a specific developer

This is what a Backtrace Should Look Like.

What other information you should provide to the developers

  • the platform you are using
  • the gtk version you are using
  • the compiler version you are using
  • any non-default ./configure options
  • the pcre version you are using if you think that is related
  • the gnome-vfs version you are using if you think that is related
  • the libaspell version you are using if you think that is related

debugging a Gtk-Critical error

If you set the environment var GDEBUG to fatalwarnings (export GDEBUG=fatalwarnings with bash), it should assert when there is an error. If you then launch your program with gdb, you can get a backtrace.