Differences
This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revisionNext revisionBoth sides next revision | ||
dev:hig:coredumps [2019/01/26 23:22] – alexxcons | dev:hig:coredumps [2019/01/26 23:46] – alexxcons | ||
---|---|---|---|
Line 1: | Line 1: | ||
<note warning> | <note warning> | ||
- | Afaik usually there is no need to attach coredumps to bugs. For most bugs it is sufficient to get the backtrace. For most distros it is possible to provide a meaningfull backtrace: | + | Afaik usually there is no need to attach coredumps to bugs. For most distros it is possible to provide a meaningfull backtrace: |
https:// | https:// | ||
- | Afaik there are (at least) | + | Afaik there are (at least) |
1.) Provide a failsafe way to reproduce the crash | 1.) Provide a failsafe way to reproduce the crash | ||
+ | |||
If devs can reproduce the crash on their own, they can debug and hopefully fix it. | If devs can reproduce the crash on their own, they can debug and hopefully fix it. | ||
However usually it is very hard to figure out why the crash happens for you, but not for others. | However usually it is very hard to figure out why the crash happens for you, but not for others. | ||
2.) Provide a meaningfull backtrace by using debug packages | 2.) Provide a meaningfull backtrace by using debug packages | ||
+ | |||
Some distributions ship debug packages ( e.g < | Some distributions ship debug packages ( e.g < | ||
If your distribution does so, you can create a coredump and add debug-symbols to it. ( Usually the raw coredump alone is not of much value ) | If your distribution does so, you can create a coredump and add debug-symbols to it. ( Usually the raw coredump alone is not of much value ) | ||
+ | |||
Enable coredumps: | Enable coredumps: | ||
- | - set " | + | * - set " |
- | - set " | + | |
After that, you can use "gdb < | After that, you can use "gdb < | ||
E.g. here some manual for Ubuntu: https:// | E.g. here some manual for Ubuntu: https:// | ||
- | 3.) Enable coredumps, attach | + | 3.) Compile |
- | 4.) Compile the appliaction with debug symbols, install it and provide a backtrace | ||
If all the other options fail, you can still compile stuff from source with debug symbols enabled (e.g. " | If all the other options fail, you can still compile stuff from source with debug symbols enabled (e.g. " | ||
You will need to install the used build environment and all dependencies of the application in dev-version .. the build-tool usually tells what is missing. | You will need to install the used build environment and all dependencies of the application in dev-version .. the build-tool usually tells what is missing. | ||
Reproduce the crash with the self-compiled binary, either via gdb or via coredump, so you get a backtrace which has file-names/ | Reproduce the crash with the self-compiled binary, either via gdb or via coredump, so you get a backtrace which has file-names/ |