2009-08-07 6 views
2

多分簡単な質問です。gdbコマンドコンソールの操作を続行するにはどうすればよいですか?

私はプロセスにアタッチするとき、実行を続行するために「続行」を実行します。

次に、 "add-symbol-file"のような別のジョブをターゲットプロセスと対話する必要がないようにしたいが、 "continue"コマンドの後にgdbコンソールがブロックされるので、プロセスを中断する。

私はプロセスを中断することなくそのようなことをすることができる方法はありますか?

答えて

3

最近まであなたが望むことはできませんでしたが、新しくリリースされた バージョン7.0のgdbには、プログラム実行中に gdbプロンプト/コンソールを使用できる「ノンストップ」モードがあります。

http://sourceware.org/gdb/current/onlinedocs/gdb_6.html#SEC47

+0

@MichaelSnyder、ありがとう! –

4

gdbが実行されているコンソールにキーボードフォーカスがあることを確認して、CTRL-Cを押します。これは通常、SIGINTシグナルがgdbに送信されるようにします。 私の場合、GDBはプログラムの実行を一時停止し、ユーザーコマンドを再び受け入れます。

は、CTRL-C(おそらく異なる設定を)動作しないなら、手動で信号を送信しよう: このようなコマンドと同様にトップをGDBのPIDを調べ、その後、GDBにSIGINTを送る:

kill -2 pidhere 
+1

記号名「kill -INT pid」を使用したほうがよいです。 – Flame

関連する問題