The most common reason for a Core dump is to access a memory address outside of your reach (memory that does not belong to your program). The operating system interrupts the program with an interrupt called SegFault or BusError, depending on how the program tried to access an invalid memory address. Then the program will be forcedly closed by the kernel. If the kernel is configured to create a core dump (memory dump and program stack), then it will be saved to disk. As indicated in another answer, you can load the core dump into GDB or another debugger and show what the program was doing when it crashed. This may or may not give you a problem. It is usually difficult, even for an experienced programmer, to use these tools, so keep in mind. If you want to try using GDB, try the following:
$ gdb / path / to / crashing / program / binary / path / to / core
(gdb) bt
'bt' will display โbacktracksโ, otherwise known as StackTraces, and may be useful for the programmer to track the error.
If you can reproduce the error, you are probably lucky by sending a detailed error report to the creator of this program. Even I, as a senior software developer, take this route from time to time. :-)
source share