2011-08-24 10 views
6

でトレース使用方法:<a href="http://developer.apple.com/library/mac/#documentation/DeveloperTools/gdb/gdb/gdb_11.html" rel="nofollow">documentation for gdb</a>でGDB

トレースポイント機能のみをリモート 目標のために現在利用可能です。 See sectionデバッグターゲットの指定。また、リモートターゲットは、トレースデータの収集方法を理解している必要があります。 この機能 は、リモートスタブに実装されています。しかし、スタブのどれも はGDDで配布されており、この書き込み時点ではトレースポイントはサポートされていません。

強調鉱山。 Debian x86やx64でGCCでコンパイルされたC/C++コード用のスタブはどこで入手できますか?それとも、私はどうやって作るの?スタブを書いていることに関するドキュメンテーションは、シリアルポートと通信するための機能を実装することしか言及していません。ありがとう!

+0

Linux上でGDBを使用するときにリンゴのGDBがフォークされたとして、あなたはおそらく、「長い長い前の時間では、」(それは、この特定の部分が変更されていないことが判明)、FSFのGDBのマニュアルを参照する必要があります。 – matt

+0

うん、私の 'gdb'からサポートされておらず、グーグルが出てきたという警告が出たが、これは現行の' gdb'に当てはまる。 – Gaius

答えて

1

リモコンについてよく分かりませんが、gdbの一部のターゲットはトレースポイントをサポートしています 「通常の」gdb情報またはshowコマンドを使用してこれを取得する方法があります。下の出力のトレースポイントは 'supported = 1'のためサポートされています。 これはgdbスタブだけでなく、スタブが実行されているカーネルにも限定されています。

$ gdbserver/gdbserver :12345 ~/tests/test & 
$ gdb -quiet 
(gdb) file ~/tests/test 
Reading symbols from /home/ratmice/tests/test...done. 
(gdb) target remote :12345 
Remote debugging using :12345 
Remote debugging from host 127.0.0.1 
Reading symbols from /lib64/ld-linux-x86-64.so.2...(no debugging symbols found)...done. 
Loaded symbols for /lib64/ld-linux-x86-64.so.2 
0x00000035dd600b20 in _start() from /lib64/ld-linux-x86-64.so.2 
Created trace state variable $trace_timestamp for target's variable 1. 
Missing separate debuginfos, use: debuginfo-install glibc-2.13-2.x86_64 
(gdb) interpreter-exec mi2 -trace-status 
^done,supported="1",running="0",frames="0",frames-created="0",buffer-size="5242880",buffer-free="5242880",disconnected="0",circular="0" 
+0

これはどのバージョンですか?私はカーネル2.6.32-5に 'gdb' 7.0.1-debianと' gcc'バージョン4.4.5を持っています。 'tstart'は、' gdbserver'を使って 'Targetはこのコマンドをサポートしていません'というあなたの例に従って実行してくれます。 'interpreter-exec mi2 -trace-status'は私に'^error、msg = "未定義のMIコマンド:trace-status"を与えます。ありがとう! – Gaius

+1

7.2で-trace-status miコマンドが追加されました。 – matt

関連する問題

 関連する問題