Provided by: manpages-ja_0.5.0.0.20180315+dfsg-1_all bug

名前

       gdb - GNU デバッガ

書式

       gdb    [-help] [-nx] [-q] [-batch] [-cd=dir] [-f] [-b bps] [-tty=dev] [-s symfile] [-e
              prog] [-se prog] [-c core] [-x cmds] [-d dir] [prog[core|procID]]

説明

       GDB をはじめとするデバッガは、プログラムが実行中もしくはクラッシュした時にそのプログラムの
       「内部」で何が行なわれているか/行われていたかを調べるのに使用されます。

       GDB  は、4 つの機能 (加えてこれらをサポートする機能) によって 実行中にバグを見つけることを
       手助けします。

          •   プログラムの動作を詳細に指定してプログラムを実行させる。

          •   指定した条件でプログラムを停止させる。

          •   プログラムが止まった時に、何が起こったか調べる。

          •   バグによる副作用を修正し、別のバグを調べるためプログラムの状態を変更する。

       GDB では C, C++, Modula-2 などで書かれたプログラムのデバッグが行なえます。 GNU Fortran  コ
       ンパイラが完成すれば Fortran もサポートされます。

       GDB  はシェルコマンドgdbで起動されます。いったん起動すると、GDB コマンドquitを実行して終了
       するまで、端末からコマンドを読み続けます。 gdbのオンラインヘルプは(gdbの中で) helpコマンド
       を実行すれば表示されます。

       gdb  は引数やオプション無しで起動できますが、  たいてい、1 つか 2 つの引数を付けて起動しま
       す。実行プログラムを 引数にする場合は以下のようになります:

       gdb program

       また実行プログラムと core ファイルの両方を指定することもできます:

       gdb program core

       もし実行中のプロセスのデバッグを行ないたい場合には、 第 2 引数として core の代わりにプロセ
       ス ID を指定します:

       gdb program 1234

       これは  GDB をプロセス ID 1234 のプロセスに接続します(このとき`1234'という名前のファイルが
       存在してはいけません。 GDB はまず core ファイルを最初にチェックしにいくからです)。

       よく利用される GDB コマンドには以下のようなものがあります:

       break [file:]function
               プレークポイントを  (file内の)  functionに設定します。

       run [arglist]
              プログラムの実行を開始します(もしあれば arglistを引数として)。

       bt     バックトレース: プログラムのスタックを表示します。

       print expr
              式の値を表示します。

       c      プログラムの実行を再開します。(たとえばブレークポイントで実行を中断した後で)

       next   次のプログラム行を実行します 。 その行内の全ての関数は 1 ステップで実行されます。

       edit [file:]function
              現在中断している場所のプログラムの行をエディタで開きます。

       list [file:]function
              現在中断している場所の近辺のプログラムのソースを表示します。

       step   次のプログラム行を実行します。 もしその行に関数が含まれていれば、その関数内をステッ
              プ実行していきます。

       help [name]
              GDB コマンド nameについての情報や、 GDB を使う上での一般的な情報を表示します。

       quit   GDB を終了します。

       GDB  の詳細についてはUsing  GDB:  A  Guide to the GNU Source-Level Debugger, by Richard M.
       Stallman and Roland H. Pesch. を参照して下さい。 同じテキストは、 info プログラム内の  gdb
       エントリからオンラインで参照できます。

オプション

       オプション以外の引数は、実行ファイルと  core ファイル (もしくはプロセス ID) を表します。つ
       まりオプションフラグでもオプションフラグの引数でもない最初の 引数は `-se' オプションで指定
       するファイルと同じになり、(もしあれば)次の  2 番目の引数は `-c' オプションで指定するファイ
       ルと同じになります。  オプションの多くは、長い表記法と短い表記法の両方で指定することができ
       ま  すが、ここではその両方を示します。  長い表記法は、どのオプションであるのかが明確であれ
       ば、短く切り詰めても 構いません。 (好みにより `-' の代わりに `+'  が使用できますが、ここで
       はよく用いられる表記で記します。)

       全てのオプションとコマンドライン引数は指定した順番に処理されます。 `-x' オプションが使用さ
       れると、この順番は変わってきます。

       -help

       -h     短い説明つきで、全てのオプションを表示します。

       -symbols=file

       -s file
              シンボルテーブルをファイル fileから読みます。

       -write 実行ファイルやコアファイルへの書き込みを有効にします。

       -exec=file

       -e file
              ファイル file を実行可能ファイルとして利用します。 core dump と連係して  pure  data
              を調べるのにも用いられます。

       -se=file
               ファイル file からシンボルテーブルを読み、同時にそれを実行可能ファイルとして利用し
              ます。

       -core=file

       -c file
              ファイル file を core dump として利用します。

       -command=file

       -x file
              ファイル fileから GDB のコマンドを読み込み、実行します。

       -directory=directory

       -d directory
              ソースファイルを探すサーチパスに directory を追加します。

       -nx

       -n     初期化ファイル `.gdbinit' からコマンドを読み込みません。 通常は、  全てのコマンドオ
              プションと引数が処理された後で、 初期化ファイル内のコマンドが実行されます。

       -quiet

       -q     起動時のメッセージおよび  copyright を表示しません。 これらのメッセージはバッチモー
              ドでも抑制されます。

       -batch バッチモードで動作します。`-x' で指定したファイル(および、-nx か -n  で抑制されてい
              なければ `.gdbinit') 内の全てのコマンドを 処理した後、戻り値として 0 を返して終了し
              ます。 コマンドファイル内の GDB コマンドの実行中にエラーが生じた場合は、 0 以外の値
              で終了します。

              バッチモードは  GDB をフィルタとして実行する場合、 たとえばプログラムをダウンロード
              して別のコンピュータ上で実行したりする場合 に便利です。 以下のメッセージ

              Program exited normally. (プログラムは正常に終了しました。)

              は通常、GDB  の制御端末上で実行されるプログラムが終了するたびに  出力されるものです
              が、 バッチモードではこのようなメッセージは出力されません。

       -cd=directory
              カレントディレクトリの代わりに  directory を GDB の作業用ディレクトリとして実行しま
              す。

       -fullname

       -f     Emacs が GDB をサブプロセスとして実行する際にこのオプションを付加します。  このとき
              GDB は、スタックフレームが表示される度(プログラムが中断する度を 含みます)に、完全な
              ファイル名と行番号を標準的な認識しやすい形式で表示します。  この表示書式は  2  つの
              ` 32'  文字、ファイル名、コロンで区切られた行番号と文字位置、改行の順になっ  ていま
              す。これは  Emacs→GDB  インタフェースプログラムにおいて、  フレームに対応するソース
              コードを表示するために 2 つの ` 32' 文字を使うことになっているからです。

       -b bps リモートデバッグ用に GDB が利用するシリアルインタフェースの転送速度を (ボーレートま
              たはビット/秒で)セットします。

       -tty=device
              プログラムの標準入出力に device を利用します。

関連項目

       info 内の `gdb' エントリー; Using GDB: A Guide to the GNU Source-Level  Debugger,  Richard
       M. Stallman and Roland H. Pesch, July 1991.

著作権

       Copyright (c) 1991 Free Software Foundation, Inc.

       Permission  is  granted to make and distribute verbatim copies of this manual provided the
       copyright notice and this permission notice are preserved on all copies.

       Permission is granted to copy and distribute modified versions of this  manual  under  the
       conditions  for  verbatim  copying,  provided  that  the  entire resulting derived work is
       distributed under the terms of a permission notice identical to this one.

       Permission is granted to copy and distribute translations  of  this  manual  into  another
       language,  under  the  above conditions for modified versions, except that this permission
       notice may be included in translations approved by the Free Software Foundation instead of
       in the original English.