0

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" ではなく " " と間違えていました.gdbinitGDB 8.1.3名前を変更した後、起動時に読み込まれていることがわかりました。ただし、GDB 7.2.2それでも問題が発生します-.gdbinit起動時にファイルが読み取られません。

また~/.gdbrc、使用する正しいファイル名ではなく、GDB によって認識されません。

4

1 に答える 1