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 は何を意味するのでしょうか?