emacsでgdbを使用しようとしています。私がデバッグしようとしているライブラリは、プロセスによってロードされ、直接実行することはできません。したがって、私はgdbの中でattachコマンドを使ってプロセスにアタッチします。プロセスにアタッチしてブレークポイントを設定すると、シェルからgdbを使用するとうまく動作しますが、emacs(M-x gdbまたはM-x gud-gdbを押す)でgdbを使用すると、ブレークポイントを設定できません。それは私に "0x7efb04でメモリにアクセスできません"と言うエラーを示しています。私はemacs 23.1.1を使用しています。ここでemacs(またはDDD)でgdbを使用しているときにブレークポイントを設定できません
は私が従うプロセスの内訳です:
- 押し
M-x gdb
またはM-x gud-gdb
emacsの内側にgdbを起動します。 - デバッグシンボルでビルドされた実行可能ファイルの名前を入力します。
- gdbを実行中のプロセスに接続するには、「attach [PID]」と入力します。
- :filename:行番号を入力してブレークポイントを設定します。
最後の手順で「0x7efb04のメモリにアクセスできません」というエラーが表示されます。
これは何が起こっているのですか?
EDIT:DDD(UI for GDB)を使用する場合、同じエラーが発生します。だから私はそれがemacsの特定の問題ではないと思う。
はい、デバッグ情報でライブラリをコンパイルしました。私はシェルでgdbを使ってデバッグすることができます。 DDD(UI for GDB)を使用しているときも同じエラーが表示されます。だから私はそれがemacsの特異的な問題ではないと思う。 – user1210622