Skip to content
Christian Stadelmann edited this page Jun 23, 2015 · 1 revision

This is a guide for getting debug information if you can reproduce a crash or a lockup of QuiteRSS. It is for Linux/Unix only (yet). See also the distro-specific documentation:

0. Install GDB, the GNU debugger

Use your package manager to install gdb.

1. Make sure you have all debug symbols installed

In case you installed QuiteRSS from source

The debug symbols for QuiteRSS should reside in your clone of the git repository or the folder you expanded the .zip/.tar.gz file to. You will have to install the debug symbols for dependencies of QuiteRSS from your package manager.

You used your package manager to install QuiteRSS

To install the debug symbols, use your system package manager: On Fedora 22 and newer, run dnf debuginfo-install quiterss. This should also work on most recent versions of CentOS and RHEL. On Fedora 21 and older, run debuginfo-install quiterss. This should also work on most versions of CentOS and RHEL. For other distributions check the links above.

Run QuiteRSS inside a debugger

  1. Open a terminal (non-root) and run gdb quiterss. You will see gdb loading debug symbols. If some are missing, it will tell you which packages you have to install, see previous step for how to do that.
  2. In gdb, type run and confirm with the Enter key to start quiterss.
  3. Use QuiteRSS until you can reproduce your crash or freeze.
  4. If QuiteRSS freezes: go to the terminal and press Ctrl+C to interrupt the quiterss process
  5. In gdb, type set logging file /path/to/filename to create a logfile in /path/to/filename
  6. In gdb, type set logging on to start logging
  7. In gdb, run t a a bt full (optional long version: thread apply all backtrace full) to get a backtrace of all threads
  8. In gdb, type set logging off to stop logging
  9. In gdb, type quit to quit gdb

Now you will have a logfile /path/to/filename which should contain some information to help fix your issue. Please check it for sensitive data (passwords, username, hostname, whatever information you won't tell everybody) and attach it to an issue.