0

問題は、emacsでc、php、pythonなどをデバッグすることではなく、emacs自体をデバッグすることです。Mx gdb Enterを使用してemacsでgdbモードに入ろうとすると、セグメンテーション違反エラーが発生しました。

これで、デバッグ情報を使用してemacsをビルドし、「gdbemacs」コマンドを使用してロードしました。

lコマンドはemacsのソースコードを表示しますが、私の問題はemacsをデバッグする方法ですか?そのブレークポイントをどこに設定する必要がありますか?gdbを使用してセグメンテーション違反の原因を見つける方法は?

以下は私が今やったことについてのスクリーンショットです、それで私がemacsをデバッグする方法の提案はありますか?ブレークポイントを設定する場所は?

http://i1271.photobucket.com/albums/jj624/bigmeowOoO/emacs_where-i-should-set-breakpoint-when-debug-emacs.jpg

4

1 に答える 1

2

gdbを使用してセグメンテーション違反の原因を見つける方法は?

(まだ)ブレークポイントを設定しないでください。runコマンドを使用するだけです。これがemacs実行を開始します(GDBの制御下)。

その中でemacs、しますM-x gdbemacsクラッシュし(運が良ければ)、(gdb)クラッシュポイントでプロンプトが表示されます。

そこから、を使用してクラッシュポイントgdbの状態を調べます。emacsどの変数の値が間違っているかなどを把握します。次に、これらの変数が設定されている場所を特定し、そこにブレークポイントを設定して、繰り返します(他のプログラムをデバッグする場合と同じようemacsに、バグのあるプログラムであることについて特別なことは何もありません)。 。

PS単純なテキストのカットアンドペーストでまったく同じ情報が伝わるような写真を投稿しないでください。

于 2012-08-12T17:44:13.240 に答える