У меня очень сложное кроссплатформенное приложение. Недавно мы с моей командой проводили стресс-тесты и столкнулись с несколькими сбоями (и сопровождающими их дампами). Некоторые из этих дампов ядра очень точны и показывают мне точное место, где произошел сбой, примерно с 10 или более кадрами стека. У других иногда есть только один кадр стека с ?? это единственный символ!
Я хотел бы знать следующее:
Вот как я компилирую двоичные файлы (в режиме выпуска):
Однако иногда я получаю дампы ядра без каких-либо символов! Понятно, что я связываюсь с неотладочной версией libstdc ++ и libgcc, но было бы хорошо, если бы хотя бы трассировка стека показывала мне, где в моем коде возник ошибочный вызов инструкции (хотя в конечном итоге он может оканчиваться на ??).