Bugs - Using the Debugger

From Bluefish Wiki
Revision as of 09:41, 30 December 2009 by Fal7i (talk | contribs) (Created page with '__NOTOC__ __NOEDITSECTION__ {{Man2top |lang=en |rev=2.0.0 |st=d |Title=Chapter X. Debugging Bluefish |prev=Man 2 pt03 |Subtitle=Part 3. Developing Bluefish |n…')
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search


Chapter X. Debugging Bluefish

1. Using the Debugger

Here are the detailed steps for sending a useful backtrace to the Bluefish Developer Team.

Procedure X.1. Running bluefish under gdb

  1. Get the latest SVN release (see Section 4, “Latest Developmental Version” for info)
  2. From bluefish, the top directory of the bluefish source, run: ./autogen.sh
    You may have to set some environment variables before running autoconf, as well as providing autoconf with some flags. Also, some patches may need to be applied, depending on your system.
  3. Then, run ./configure --with-debugging-output
    Again, you may have to add some flags, depending on your system.
  4. Once you succeed in configuring bluefish, run: make clean in order to remove all unnecessary files.
  5. Then, run make to compile bluefish.
    Do not run make install since it strips the debugging symbols from the executable.
  6. Execute bluefish under gdb with: gdb src/bluefish. This way, you will get access to a non stripped version of bluefish, which is not the case if you run gdb bluefish or gdb /usr/local/bin/bluefish, since those binaries do not have any debugging symbols anymore.
  7. Once gdb has started, type r to start the debugging session.
  8. Try to reproduce the crash in bluefish.
  9. Copy and paste the last 50 lines of debugging output to a text file.
  10. Type bt in gdb to get the backtrace, and copy it to the text file too. If the backtrace is huge, copy only the first 50 lines.
  11. Save the text file and gzip it by running gzip textfile in a terminal.
  12. Quit gdb with q
  13. Fill in the bug report (see Section 2, “Filling a bug report” for instructions).