2017-03-17 8 views
0

私はstdinから読み込んでsdtoutに書き込むバイナリファイルをデバッグするためにGDBマシンインタフェースを使用しています。 stdinとstdoutの両方をファイルにリダイレクトしたいと思います。平野GDBで、私は次のように実行コマンドを使用することができます。GDB/MIはstdinとstdoutをファイルにリダイレクトします

run <input.txt> output.txt 

多分GDB/MIコマンドはこれに同様-exec-実行に使用する方法はありますか?ここで

は、同様の質問GDB/MI detecting target waiting for inputですが、それはプレーンなgdbのソリューションに比べて非常に複雑そうです。

私はまた、ドキュメントに何かを発見していない: ftp://ftp.gnu.org/old-gnu/Manuals/gdb/html_chapter/gdb_22.html#SEC216

答えて

0

解決策が見つかりました。 MI GDBコマンドとGDBコマンドを併用することができます。だから、私はこのようにそれを行うことができますファイルに標準入出力を転送する必要がある場合:主な機能(または任意の場所にesle)で

  • -break-insert main //設定されたブレークポイントをデバッグする

    1. -file-exec-and-symbols <filename> //のReadFile
    2. run <input.txt> output.txtファイルへ//前方stdinとstdoutを
    3. -exec-run //この後

    のデバッグを開始しますが、ステップまたは-exec-ステップまたはyのような何か他のもののようなコマンドを実行することができます通常は行います。

  • 0

    あなたははmkfifoユーティリティと一緒にマイルのコマンド-inferior-tty-set を使用することができるはずです。

    関連する問題