次の表は、idb で利用できるデバッグコマンドで頻繁に使用されるもののリストです。 これらのコマンドの多くは短縮することができます (例えば、 cont の代わりに c、step の代わりに s を入力するなど)。 alias コマンドを使用して、これらの短縮されたコマンドの完全な名前や、独自のエイリアスを作成することもできます。
下記の表は、最もよく使用されるデバッガコマンドの例です。詳細は、 オンライン・マニュアルの 『Intel® Debugger (IDB) Manual』(英語) を参照してください。
コマンド例 |
説明 |
catch |
現在デバッガがキャッチするように設定されているすべての信号を表示します。ignore も参照してください。 |
catch fpe |
デバッガに fpe 信号 (または指定された信号) をキャッチするように指示します。 これにより、指定された信号がインテル® Fortran ランタイム・ライブラリ (RTL) に到達するのを防ぎます。 |
catch unaligned |
デバッガにアライメントの合っていない信号をキャッチするように指示します。 |
cont |
デバッグ中のプログラムの実行を再開 (続行) します。continue という idb コマンドはないことに注意してください。 |
delete 2 |
イベント番号 2 で指定されているブレークポイントやトレースポイントを削除します。status も参照してください。 |
delete all |
すべてのブレークポイントとトレースポイントを削除します。 |
help |
デバッガのヘルプテキストを表示します。 |
history 5 |
最近使用した 5 個のデバッガコマンドを表示します。 |
ignore |
デバッガが現在無視するように設定されている信号を表示します。無視される信号はインテル Fortran RTL に、直接渡すことができます。catch も参照してください。 |
ignore fpe |
デバッガに fpe 信号 (または指定された信号) を無視するように指示します。これにより、指定された信号がインテル Fortran RTL に直接渡され、メッセージが表示されます。 |
ignore unaligned |
デバッガにアライメントの合っていない信号を無視するように指示します (デフォルト)。 |
kill |
プログラムのプロセスを終了させます。デバッガは実行されたままの状態で、ブレークポイントおよびトレースポイントは、プログラムが再実行されるまでそのままの状態を保ちます。 |
list |
ソース・プログラム行を表示します。行の範囲をリストするには、list 1,9 などのように、開始行番号、カンマ、終了行番号を追加します。 |
print k |
指定された変数の値を表示します (K など) |
printregs |
すべての レジスタとそれらの内容を表示します。 |
next |
1 ソース文ごとに進めますが、コールするサブプログラムの中には入りません。step と比較してください。 |
quit |
デバッグ・セッションを終了します。 |
run |
デバッグするプログラムを実行します。プログラム引数およびリダイレクトを指定できます。 |
rerun |
デバッグ中のプログラムを再実行します。プログラム引数およびリダイレクトを指定できます。 |
return [routine-name] |
関数の実行を関数が呼び出し元に戻るまで続行します。 step コマンドの使用時に、調査の必要がないサブプログラムに入ってしまった場合は、 return コマンドを使用して、呼び出し元に戻るまで現在の関数の実行を続行します。return コマンドでルーチンの名前を含めた場合、関数はそのルーチンに制御が戻るまで実行されます。 routine-name はルーチンの名前で、通常 PROGRAM 文、SUBROUTINE 文、または FUNCTION 文で命名されます。PROGRAM 文がない場合、デバッガは main$ のプリフィックスの後ろにファイル名が付いたメイン・プログラムを参照します。 |
sh more progout.f90 |
シェルコマンドの more を実行し、progout.f90 ファイルを表示してデバッガ環境に戻ります。 |
show thread |
デバッガに対し、既知のスレッドをすべてリスト表示します。 |
status |
ブレークポイントとトレースポイントにイベント番号を付けて表示します。delete も参照してください。 |
step |
1 ソース文ごとに進めます。サブプログラム・コールの内部にも入ります。インテル Fortran I/O 文、組込みプロシージャ、ライブラリ・ルーチン、他のサブプログラムについては、step ではなく、 next コマンドを使用して、サブプログラム・コールを飛び越してください。next と比較してください。また、 return も参照してください。 |
stop in foo |
foo ルーチンの始めで実行を停止します (ブレークポイント)。 |
stop at 100 |
現在のソース・ファイルの 100 行目で実行を停止します (ブレークポイント)。 |
stopi at xxxxxxx |
現在のソース・ファイルのアドレス xxxxxxx で実行を停止します。 |
thread [n] |
現在のスレッドのコンテキストを表示または設定します。 |
watch location |
デバッガ (またはユーザ・プログラム) が指定したメモリ位置にアクセスした時にメッセージを表示します。例: watch 0x140000170 |
watch variable m |
デバッガ (またはユーザ・プログラム) が m に指定した変数にアクセスした時にメッセージを表示します。 |
whatis symbol |
指定されたシンボルのデータ型を表示します。 |
when at 9 {command} |
単一のコマンドまたは複数のコマンドを実行します。 指定された行 (9 行目など) に到達したときに単一の command または複数の command が実行されます。例えば、when at 9 {print k} は、プログラムがソースコードの 9 行目を実行するときに変数 K の値を出力します。 |
when in name {command} |
単一のコマンドまたは複数のコマンドを実行します。 name に指定したプロシージャに到達したときに、単一の command または 複数の command が実行されます。例えば、 when in calc_ave {print k} は、calc_ave という名前のプロシージャの実行を開始するときに変数 K の値を出力します。 |
where |
コールスタックを表示します。 |
where thread all |
すべてのスレッドのスタックトレースを表示します。 |
デバッガには、その他の特殊な目的のコマンドもサポートされています。次に例を示します。
実行時間が非常に長いプログラムに対し、attach コマンドと detach コマンドを使用できます。
listobj コマンドは、共有ライブラリに依存したプログラムのデバッグに役立ちます。listobj コマンドはデバッガで現在認識されている実行イメージおよび共有ライブラリの名前を表示します。