Hacker News new | ask | show | jobs
by Greek0 1242 days ago
You can have debug symbols even in release builds. With gcc, `-ggdb` for debug symbols and `-O2` for optimization can be selected in dependently of each other. Optimized binaries are a bit harder to debug, but locating the source of this crash should be easy even in optimized versions.

As additional complication, debug symbols are often removed from the binary post-build to reduce binary size. The `strip` utility either discards debug symbols entirely, or it puts them in a separate folder as .dbgsym filses. See the gdb `debug-file-directory` option and the `add-symbol-file` command.