core dump is an essential feature to debug why a segfault happened. It allows you to investigate a backtrace without having to run a debugger during runtime. Unfortunately core dumps are disabled at most distros, you can check by using: ulimit -c Which prints 0 when core dumps are disabled. First check /etc/security/limits.conf. There should be *no* lines with core (meaning there are no limits), or only lines like (or a number high enough for your purposes): * soft core unlimited * hard core unlimited Then make sure that the shell startup scripts contain a line like (or with a number high enough for your purposes): ulimit -c unlimited To investigate a core dump, use: gdb -c dump_file ./program It is important to pass which program generated the core, otherwise no information is shown.