-5

次のセグメンテーション違反はどういう意味ですか?

Fatal error (11)Segmentation fault

セグメンテーション違反とは何ですか? また、何が原因で発生する可能性がありますか?

Mx gdbEmacsに入力すると、問題が発生します。

入力はこのに示され、出力はここに示されています。

詳細:

[a]: ソースから centos 5.3 で emacs 24.1 をビルドしましたが、このビルドは gdb モードに入ることができません

[b]: また、debian 5.0 で emacs 24.1 をビルドすると、エラーなしで gdb モードを使用できます

だから、centos 5.3のemacs 24.1でgdbモードを使用できないために何が起こったのか本当にわかりません:(

4

1 に答える 1

2

Emacs をデバッグするには、自分でビルドした場合は、プロジェクト ディレクトリに移動してから、次のようにします。

$ gdb ./src/emacs
$ (gdb) set logging file ~/emacs-errors.log
$ (gdb) r -q
<... get to the point where error happens ...>
$ (gdb) bt full

次に、バグ レポートを送信するときに、~/emacs-errors.log ファイルを使用します (gdb はすべてのエラーをこのファイルに出力します)。

また、コンパイル時にデバッグ情報を保持するように構成する必要があることに注意してください。そのためには、

$ CFLAGS='-O0 -ggdb -g3' ./configure --enable-checking --enable-asserts

そして、再コンパイルします。

于 2012-08-12T15:59:38.013 に答える