GDB を使用して C プログラムをデバッグしています。そして、私はSIGUSR1
自分のプログラムで処理しているので。したがって、プログラムの実行可能ファイルを使用して gdb を実行すると、次のようになります。
gdb <my_executable>
入力する必要があるgdbプロンプトの下で(gdb)
-
handle SIGUSR1 nostop noprint pass
毎回これを行う必要があるため、このhandle
コマンドを init スクリプトに配置したいと考えました。~/.gdbrc
グーグルで調べたところ、とについて知りました~/.gdbinit
。コマンドを両方のファイルに配置しようとしましたhandle
が、gdb が実行可能ファイルからシンボルを読み取った後、handle コマンドが 1 回実行されていることがわかりません。
これの何が問題なのですか?
編集:GNU gdb(GDB)7.2.2
編集 2 : 私の .gdbrc ファイルの内容は次のようになります -
echo "hello from gdbrc"
handle SIGUSR1 nostop noprint pass
run 204
編集 3 : GNU gdb (GDB) 8.1.3で試しても、同じ問題に直面しています。
編集 4 :~/.gdbrc
と~/.gdbinit
にはフル アクセス許可が与えられます -
-rwxrwxrwx 1 darshan grp 68 Oct 9 22:14 .gdbint
-rwxrwxrwx 1 darshan grp 67 Oct 9 22:14 .gdbrc
編集 5 : ファイルの名前を " .gdbint
" ではなく " " と間違えていました.gdbinit
。GDB 8.1.3
名前を変更した後、起動時に読み込まれていることがわかりました。ただし、GDB 7.2.2
それでも問題が発生します-.gdbinit
起動時にファイルが読み取られません。
また~/.gdbrc
、使用する正しいファイル名ではなく、GDB によって認識されません。