3

状況は次のとおりです。

クラッシュしている Linux バイナリがあります。ログ ファイル、トレース ファイルなどはありません。デバッガーを接続して (ソースをローカルに持っています)、エラーを追跡できるようにする必要があります。

この問題に取り組むための最も簡単で最良の方法は何ですか?

4

2 に答える 2

6

リモート デバッグはかなり単純です。ターゲット プラットフォームで、GDBserver を使用してアプリケーションを起動し、着信 TCP 接続をリッスンするためのホストとポートを指定します。

  gdbserver HOST:PORT PROG [ARGS ...]

開発ワークステーションで、クロスターゲット GDB を起動します。

  powerpc-7450-linux-gnu-gdb PROG

ストリップされていない実行可能ファイルを必ず指定してください。GDB コンソールで、次のように入力します。

  target remote HOST:PORT
  break main
  continue

GDB および GDBserver を使用したリモート クロスターゲット デバッグ

于 2009-03-14T11:53:33.540 に答える
0

gdb はリモート デバッグをサポートしているようです。

私はそれを使用したことはありませんが、http://davis.lbl.gov/Manuals/GDB/gdb_17.htmlが最初のようです。

基本的に、ターゲット マシンの gdbserver の下でプログラムを実行すると、gdb が (TCP またはシリアル経由で) gdbserver に接続します。

于 2009-03-13T13:53:30.973 に答える