How to debug for reporting

=Introduction= This page assumes:
 * You understand the basics of "How to file a bug report"
 * You have searched through the Scribus bug tracker and found out that your bug had not yet been reported
 * You've searched this wiki for the issue and have come up empty-handed

Therefore it will be useful to try to reproduce the bug, and to find out what is the simplest scenario where/when it happens.

= Goal = '''The goal is to help the developers get a grip on the bug and to understand how to troubleshoot it. '''

When your bug is a reproduce-able crash, then you will be able to attach to its report a backtrace from a debugger.

This Howto tells you how to generate this information.

= Generating a backtrace =

On Linux
If the crash happens on a Linux machine (or generally on a unix machine with the GNU gcc compiler) you can use  AKA The GNU Debugger.


 * 1) You have to first load scribus in a new gdb session and launch Scribus from there, in other words you are invoking Scribus within the GNU Debugger.
 * 2) When Scribus crashes you will automatically see details generated about the error by.
 * 3) Generate a full report with the command bt (backtrace).

$ gdb scribus (gdb) run ... error reporting ... (gdb) bt ... full backtracking information (gdb) exit $

NOTE: If you can compile Scribus yourself from source  -- and you plan to report bugs -- you should enable the debugging at compile time :

cmake. -DCMAKE_INSTALL_PREFIX:PATH=/opt/scribus15svn -DWANT_DEBUG=1
 * With Cmake, you should add -DWANT_DEBUG=1 to your cmake line, e.g.:

On Microsoft Windows
I've not tried it, but this How-to explains how to run gdb under Microsoft Windows.

Can anybody try it out and, eventually, report here if it works?

= Related Links =
 * How to file a bug report
 * Development Tricks