Если ваш исполняемый файл (и связанные библиотеки) скомпилирован с информацией об отладке (т. е. с флагом -g
до gcc
или g++
), вы можете использовать libbacktrace
Яна Тейлора (объявлено здесь здесь ]) изнутри GCC - см. его код здесь
В этой библиотеке (бесплатное программное обеспечение, лицензированное BSD) используется DWARF отладочная информация из исполняемых файлов и связанных библиотек по этому процессу. См. Его файл README .
Остерегайтесь того, что если вы скомпилируете с оптимизацией, некоторые функции могут быть встроены (даже не будучи явно помечены inline
в исходном коде и static
встроенные функции могут не иметь собственного собственного кода). Тогда backtracing не расскажет о них много.