我正在使用 backtrace() 和 backtrace_symbols() 以如下格式输出 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,没有描述的模块,是什么意思?