私はemacsでgdbを使おうとしています。デバッグしようとしているライブラリはプロセスによってロードされ、直接実行することはできません。したがって、gdb内でattachコマンドを使用してプロセスにアタッチします。プロセスへのアタッチとブレークポイントの設定は、シェルからgdbを使用する場合は正常に機能しますが、emacsでgdbを使用する場合(MxgdbまたはMxgud-gdbを押す)、ブレークポイントを設定できません。「0x7efb04のメモリにアクセスできません」というエラーが表示されます。私はemacs23.1.1を使用しています。
これが私が従うプロセスの内訳です:
M-x gdb
またはを押して、M-x gud-gdb
emacs内でgdbを起動します。- デバッグシンボルでビルドされた実行可能ファイルの名前を入力します。
- 「attach[PID]」と入力して、実行中のプロセスにgdbをアタッチします。
- 次のように入力してブレークポイントを設定します:filename:linenumber。
最後のステップで、「0x7efb04のメモリにアクセスできません」というエラーが表示されます。
なぜこれが起こっているのか考えはありますか?
編集:DDD(UI for GDB)を使用すると同じエラーが発生します。だから私はそれがemacs特有の問題ではないと思います。