gdbは、GNUデバッガ(GNU Debugger)の略称です。
ここでは、gdbについて解説します。
gdbとは
gdb(CNU Project Debugger)とは、「GNUプロジェクト」が開発したUnix系システムで動くデバッグ用フリーソフトのことです。
コマンドラインからgdbコマンドを実行して起動します。
C言語、C++、FORTRAN、FreeBASIC、Pascalなど、多様なプログラミング言語に対応しています。
プログラムのコンパイル
gcc(Gnu Compiler Collection)を使用してコンパイルします。
gdbを使用してデバッグする場合、コンパイル時にはオプション「-g -O0」を付けてコンパイルする必要があります。

実行ファイル「a.out」が生成されます。
このオプションには、以下の意味があります。

gdbの起動方法としては、「gdbから起動する方法」と「稼働済みプログラムをアタッチする方法」があります。
起動方法
gdbから起動する方法
以下のコマンドを入力します。
「a.out」は、実行ファイルです。

稼働済みプログラムをアタッチする方法
端末Aからプログラムを実行します。

psコマンドでプログラムのプロセスID(PID)を確認します。

一番左端のフィールドに出てくる数字(ここでは26227)がPIDです。
端末Bからgdbを実行します。

gdbのコンソールにてプログラムにアタッチします。

シンボルのロードが完了したらブレークポイントを設定し、continue(c)します。

gdbの実行方法
「run」または「r」と入力します。

gdbの終了方法
「quit」または「q」と入力します。

コマンド集
主要なコマンドを紹介します。
ブレーク関連

実行関連

参照

値の書き換え
