Как интерпретировать адреса трассировки для отладки с помощью GDB

Я использую символы обратной трассировки ()и обратной трассировки _()для вывода обратной трассировки на SIGSEGV и других сигналов в формате, подобном этому:

0: [0xb750818]
1: /opt/server/libQtScript.so.4(+0x6f42a) [0xb782c42a]
2: /opt/server/libQtScript.so.4(+0x7bffc) [0xb7838ffc]
3: /opt/server/libQtScript.so.4(+0x86946) [0xb7843946]
4: /opt/server/libQtScript.so.4(+0x7c4bc) [0xb78394bc]
5: /opt/server/libQtScript.so.4(+0x86946) [0xb7843946]
6: /opt/server/libQtScript.so.4(+0x9603e) [0xb785303e]
7: /opt/server/libQtScript.so.4(_ZN12QScriptValue4callERKS_RK5QListIS_E+0x2e7) [0xb7891647]

В этом конкретном случае кадр #7 мне подходит, хотя кадр 1 -6 дает мне какие-то адреса "+x".

Как в дизассемблере получить точную строку для "+0x6f42a" и других адресов в GDB? А что значит кадр #0, без описанного модуля?

5
задан Vincas Dargis 10 April 2012 в 13:40
поделиться