|Version 1 (modified by brendan, 4 years ago) (diff)|
Make sure your mutt is built with debugging support enabled: run mutt -v and look for +DEBUG If it isn't, you'll have to rebuild mutt, passing the --enable-debug flag to configure along with any other flags you need.
To produce a debug trace, run mutt with the -d2 flag. -d takes a number from 1-5, corresponding to increasing levels of verbosity:
- network tracing, important state changes
- less important information
- log spam, e.g. status updates from functions that are called very often
- everything, even very confidential information like passwords
For most purposes, level 2 provides the right amount of detail for a bug report. It may also include some confidential information (email addresses, server URLs), so you should read it over before you send it to anyone. Feel free to sanitize it -- we'll ask for further information if necessary.
Analyzing a crash
We'd love to see a debugger back trace. If mutt has produced a core file, run gdb /path/to/mutt <core file>, then enter backtrace at the (gdb) prompt and cut and paste the output. If there's no core, you can run mutt inside of gdb, then generate the backtrace when it crashes:
- gdb /path/to/mutt
- (gdb) run -d2 [other arguments you use]
- (make mutt crash)