これは、Ubuntu Online、Fedora Online、Windows オンライン エミュレーター、MAC OS オンライン エミュレーターなど、複数の無料オンライン ワークステーションのいずれかを使用して、OnWorks 無料ホスティング プロバイダーで実行できるコマンド gdb です。
プログラム:
NAME
gdb - GNU デバッガー
SYNOPSIS
gdb [-助けて] [-nh] [-nx] [-q] [-バッチ] [-cd=DIR] [-f] [-b bps]
[-tty=devの] [-s シンボリックファイル] [-e うろつく] [-se うろつく] [-c ] [-p プロシージャ ID]
[-x コマンド] [-d DIR] [うろつく|うろつく プロシージャ ID|うろつく ]
DESCRIPTION
GDB などのデバッガーの目的は、「内部」で何が起こっているかを確認できるようにすることです。
実行中の別のプログラム -- またはその瞬間に別のプログラムが行っていたこと
墜落した
GDB は、ユーザーを支援するために、主に XNUMX 種類のこと (およびこれらをサポートする他のこと) を実行できます。
行為のバグをキャッチ:
· プログラムを開始し、その動作に影響を与える可能性のあるものをすべて指定します。
· 指定した条件でプログラムを停止させます。
· プログラムが停止したときに何が起こったのかを調べます。
・プログラムの内容を変更して、次の効果を修正して実験できるようにします。
XNUMXつのバグを見つけて、別のバグについて学びます。
GDB を使用すると、C、C@t{++}、Fortran、Modula-2 で書かれたプログラムをデバッグできます。
GDBはシェルコマンド「gdb」で起動します。 開始すると、コマンドを読み取ります。
GDB コマンド「quit」で終了するように指示するまで、ターミナルを閉じたままにしておきます。 オンラインヘルプを入手できます
コマンド「help」を使用して、GDB 自体から。
引数やオプションを指定せずに「gdb」を実行できます。 ただし、GDB を起動する最も一般的な方法は次のとおりです。
XNUMX つまたは XNUMX つの引数を使用し、引数として実行可能プログラムを指定します。
gdbプログラム
実行可能プログラムとコア ファイルの両方を指定して開始することもできます。
gdb プログラム コア
代わりに、プロセス ID を XNUMX 番目の引数として指定できます。
実行中のプロセス:
gdb プログラム 1234
gdb -p 1234
プロセス 1234 に GDB をアタッチします (名前のファイルも存在しない場合) 1234; GDB はチェックします
最初にコア ファイルを作成します)。 オプションあり -p を省略できます プログラム ファイル名。
最も頻繁に必要となる GDB コマンドの一部を次に示します。
破る [file:]機能
ブレークポイントをに設定します function (中 file).
ラン [引数リスト]
プログラムを開始します( 引数リスト指定されている場合)。
bt バックトレース: プログラム スタックを表示します。
印刷 式
式の値を表示します。
c (ブレークポイントなどで停止した後) プログラムの実行を続行します。
次の
(停止後) 次のプログラム行を実行します。 ステップ が 行内の関数呼び出し。
edit [file:]function
現在停止しているプログラム行を見てください。
リスト [file:]function
現在停止している場所の近くにプログラムのテキストを入力します。
手順
(停止後) 次のプログラム行を実行します。 ステップ に 行内の関数呼び出し。
助けます [名]
GDBコマンドに関する情報を表示する 名、または GDB の使用に関する一般情報。
やめます
GDB を終了します。
GDB の詳細については、次を参照してください。 使い方 GDB: A ガイド 〜へ GNU ソースレベル デバッガ、によって
リチャード・M・ストールマンとローランド・H・ペッシュ。 同じテキストが「gdb」としてオンラインで入手可能です
「情報」プログラムのエントリ。
OPTIONS
オプション以外の引数は、実行可能ファイルとコア ファイル (またはプロセス ID) を指定します。
つまり、オプション フラグが関連付けられていない最初の引数は、
-se オプションがあり、XNUMX 番目のオプションがある場合は、 -c の名前の場合のオプション
ファイル。 多くのオプションには長い形式と短い形式の両方があります。 両方ともここに示されています。 長い形式
十分なオプションが存在する限り、それらを切り捨てても認識されます。
明確な。 (必要に応じて、オプション引数にフラグを付けることができます + ではなく -しかし
より一般的な規則を説明します。)
指定したすべてのオプションとコマンド ライン引数は、順番に処理されます。
順序によって違いが生じるのは、 -x オプションが使用されます。
-助けて
-h すべてのオプションを簡単な説明とともにリストします。
-シンボル=file
-s file
ファイルからシンボルテーブルを読み取る file.
-書く
実行可能ファイルとコア ファイルへの書き込みを有効にします。
-exec=file
-e file
ファイルを使用する file 必要に応じて実行し、検査するための実行可能ファイルとして
純粋なデータとコア ダンプを組み合わせます。
-se=file
ファイルからシンボルテーブルを読み取る file それを実行可能ファイルとして使用します。
-コア=file
-c file
ファイルを使用する file コアダンプとして調査します。
-コマンド=file
-x file
ファイルからGDBコマンドを実行する file.
-元 command
指定された GDB を実行する command.
-ディレクトリ=ディレクトリにジョブを開始します。
-d ディレクトリにジョブを開始します。
Add ディレクトリにジョブを開始します。 ソースファイルを検索するためのパス。
-nh からのコマンドを実行しないでください。 ~/.gdbinit.
-nx
-n どの場所からでもコマンドを実行しないでください .gdbinit 初期化ファイル。
-静かな
-q "静かな"。 紹介文や著作権メッセージを印刷しないでください。 これらのメッセージは、
バッチモードでも抑制されます。
-バッチ
バッチモードで実行します。 すべてのコマンドファイルを処理した後、ステータス 0 で終了します。
で指定 -x (と .gdbinit、阻害されていない場合)。 次の場合、ゼロ以外のステータスで終了します。
コマンドファイル内のGDBコマンドを実行するとエラーが発生します。
バッチ モードは、GDB をフィルタとして実行する場合、たとえばダウンロードして実行する場合に便利です。
別のコンピュータ上のプログラム。 これをさらに便利にするために、メッセージ
プログラムは正常に終了しました。
(これは通常、GDB 制御下で実行されているプログラムが終了するたびに発行されます)
バッチ モードで実行している場合は発行されません。
-cd=ディレクトリにジョブを開始します。
次を使用して GDB を実行します ディレクトリにジョブを開始します。 現在のディレクトリではなく、作業ディレクトリとして使用します。
-フルネーム
-f Emacs は、GDB をサブプロセスとして実行するときにこのオプションを設定します。 GDB に次のものを出力するよう指示します。
スタックごとに標準的な認識可能な形式で完全なファイル名と行番号が表示されます。
フレームが表示されます (プログラムが停止するたびも含まれます)。 この認識可能な
フォーマットはXNUMXつのように見えます \ 032 文字、その後にファイル名、行番号、
コロンと改行で区切られた文字位置。 Emacs から GDB へのインターフェース
プログラムは XNUMX つを使用します \ 032 のソースコードを表示するための信号として文字を入力します。
フレーム。
-b bps
GDB で使用されるシリアル インターフェイスの回線速度 (ボー レートまたはビット/秒) を設定します。
リモートデバッグ用。
-tty=デバイス
を使用して実行します デバイス プログラムの標準入出力用。
onworks.net サービスを使用してオンラインで gdb を使用する