2009-06-12 6 views
1

プログラマーをデバッグすると、GDBに表示される無駄な情報が多すぎます。この種の情報はiPhoneのフレームワークから来るかもしれません。それは私のコードで記録されていません。このiphoneの開発:gdbのログが多すぎます

ノード48 TrialMTなどの情報(102102101101)

ノード58 TrialMT(102102101101)

ノード69 TrialMT(102102101101)

ノード72 TrialMT(102102101101)

あまりにも多く。だから私のログを見つけることができません。

GDBログをファイルにエクスポートする方法があることを知りたいので、後でログ情報を見つけることができます。

ありがとう

答えて

1

Xcodeでは、GDBコマンドをデバッガコンソールに入力できます。そこにstdoutとstderrのファイルディスクリプタをあなたの好みのログファイルにリセットすることができます。

(gdb) call (void)close(1) 
(gdb) call (void)close(2) 
(gdb) call (int)open("/tmp/out.log", 0x201, 0644) 
$1 = 1 
(gdb) call (int)dup(1) 
$2 = 2 
(gdb) continue 
+0

私は最終的にあなたの役に立つ情報にGDBコンソールベースを使用することに決めました。私はgdbコマンドに慣れていません。 –

+0

"call"コマンドを使用すると、実行中のプロセスで関数を呼び出すことができます。 これらの関数を実行可能ファイルで直接呼び出すことで、同じ効果を得ることができます。あなたの主な機能で。これらは標準のunixファイル処理関数です。ファイル記述子はstdin = 0、stdout = 1、stderr = 2です。そのため、1と2を閉じて、最初に空いているファイル記述子に移動する新しいファイルを開きます。次に、dupはファイル記述子を次の空き記述子に複製します。 – nschmidt

関連する問題