ヒューリンクステクニカルサポート
Absoft Pro Fortran Getting Started Absoft 製品ページ
更新日: 15/12/07

1. デバッグを始めるまえに

このセクションでは、Fx3 を使ってデバッグを行う前に必要なプログラムの準備と、デバッグ作業をはじめる手順についてご説明いたします。また、ブレイクポイント、シングルステップ実行、変数の検証についてもご紹介します。

Fx3 (又はその他のデバッガ)を使ってソースレベルのデバッグを行うには、デバッガで取り扱うオリジナルのソースファイルにシンボリック情報が含まれていなければなりません。シンボリック情報は、通常、コンパイラが構文解析や字句解析をおこなう初期段階でのみ使用するもので、オブジェクトファイルが作成された後は不要となります。デバッグ作業を行う前に、コンパイラとリンカオプションにあらかじめ必要な設定を行い、生成されるファイルにシンボル情報と行番号情報が保存されるようプログラムを準備しておく必要があります。

 

コンパイラオプション

Absoft のコンパイラでオブジェクトファイルにシンボルと行番号の情報を追加するには、-g オプションを使用します。デバッグ作業中にソースコードを表示させたい場合は、このオプションをソースファイル毎に指定してください。デバッグに関係のないファイルには、このオプションを設定する必要はありません。詳しくは、OS 別の追加情報をご覧ください。

なお、最適化オプションについては、デバッグ中はいずれも無効にしておくのが望ましいとされています。これはオプティマイザがプログラムの外観や命令文の実行順序に大きな変更を加えてしまうからです。最適化によって、削除されたり追加されたりするコードもあれば(ループ展開など)、削除されたりレジスタにアロケートされるたりする変数や(検証や変更ができなくなります)、順序に従わず実行される命令文も出てきます。

 

デバッグ作業の開始

Fx3 デバッガは、お使いのシステムにインストールされている他のアプリケーションと同様に起動します。Fx3 のアイコンをダブルクリックするか、シェルコマンドプロンプトで Fx3 と入力してください。

Fx3 デバッガを起動する際は、デバッグしたいプログラムの名称や、プログラムの実行時に渡したい引数の設定のほかに、初期化中の動作を制御する各種オプションを指定できます。

Fx3 コマンドラインデバッガを起動する構文は以下のとおりです:

Fx3 {Fx3 options} {program name} {“program argument list”}

Fx3 のアイコンをダブルクリックして起動した場合は、コマンドラインの引数として実行ファイル名を指定する代りに、Fx3 の File メニューから Open... を選択し、デバッグしたいアプリケーションの名前を選択してください。

最初にあらわれるのは、Load Program ウィンドウです。これはコマンドライン引数を設定したり変更するのに使用します。

Fx3 がシンボルテーブルとアプリケーションを読み込むと、Fx3 の初期化コードが実行され、メインプログラムの実行命令文をデバッグする準備が整えられます。

Fx3 のウィンドウは2つの部分に分けられています。上の部分にはソースファイルが表示されます。ソースファイルが複数ある場合は、ファイル名の付いたタブで区別され、タブを選択することでそれぞれを切り替えることができます。下の部分には、ユーザー変数、ブレイクポイント、スタック情報、コンソールなどのウィンドウが割り当てられています。これらは、いずれも独立したペインに分離することが可能で、分離されたペインには各機能の名称が付けられます。

コンソールペインは、Fx3 のメニューに含まれていないコマンドを実行する際に使用します。また、コマンドの実行結果はすべてここに表示されます。

Debug メニューの Step Into または Step Over コマンドを選択すると、命令文を一度にひとつずつ実行することができます。Step Into はサブルーチンの呼び出しや関数の参照を順にたどるもので、反対に、Step Over はこれらをひとつの命令文として取り扱います。同じく Debug メニューにある Retuan コマンドは、プロシージャ内にある残りの命令文すべてをひとつの命令文として実行し、呼び出した地点に返すものです。ツールバーにはこうしたコマンドすべてを簡単に利用できるボタンが用意されています。

ブレイクポイントは、ソースウィンドウの左端にあるソース文の行番号が表示されている場所までマウスを移動してセットします。この領域にマウスを移動させ、ボタンをクリックすることによって、ソース文のその行にブレイクポイントをセットできます。ブレイクポイントをセットしたら、その行番号にブレイクポイントが設定されたことを示す赤の目印が表示されます。ブレイクポイントを解除したい場合は、ブレイクポイントがセットされた行番号にマウスを移動させ、ボタンをクリックしてください。

プログラムで使用されている変数は、Fx3 ウィンドウの下部に通常表示される Watches ウィンドウで検証したり編集することができます。タイプ別に分けられた3種類の変数(Locals、Arguments、User)が各ペインに表示されます。

Watches ウィンドウ

Watches ウィンドウに表示される値の書式は、いずれかを選んでマウスを右クリックしてあらわれる format メニューを選択することによって変更することができます。

 

 

追加情報 A

Windows でのデバッグ作業

この追加情報は、Fx3 の Windows 版のみに該当する内容です。

Absoft コンパイラでオブジェクトファイルにシンボルと行番号情報を追加するには、-g オプションを使用します。デバッグ作業中にソースコードを表示させたいソースファイルが複数ある場合には、それぞれのファイルにこのオプションを指定する必要があります。デバッグとは無関係のファイルに対してはこのオプションを使用する必要はありません。

Absoft Developer Tools のインターフェースを使用してプロジェクトをビルドする場合は、Absoft Developer Tools Compiler Interface にある Debug Standard オプションを選択してください。Configure メニューの Set Project Options... コマンドを選択するとこのオプションがあらわれます。デバッグの各種オプションが Target タブに用意されています。

デバッグコンパイラオプション

追加情報 B

Macintosh でのデバッグ作業

この追加情報は、Fx3 の Macintosh 版のみに該当する内容です。

Absoft コンパイラでオブジェクトファイルにシンボルと行番号情報を追加するには、-g オプションを使用します。デバッグ作業中にソースコードを表示させたいソースファイルが複数ある場合には、それぞれのファイルにこのオプションを指定する必要があります。デバッグとは無関係のファイルに対してはこのオプションを使用する必要はありません。

Absoft Developer Tools のインターフェースを使用してプロジェクトをビルドする場合は、Absoft Developer Tools Compiler Interface にある Debug Standard オプションを選択してください。Configure メニューの Set Project Options... コマンドを選択するとこのオプションがあらわれます。デバッグの各種オプションが Target タブに用意されています。

デバッグコンパイラオプション

追加情報 C

Linux でのデバッグ作業

この追加情報は、Fx3 の Linux 版のみに該当する内容です。

Absoft コンパイラでオブジェクトファイルにシンボルと行番号情報を追加するには、-g オプションを使用します。デバッグ作業中にソースコードを表示させたいソースファイルが複数ある場合には、それぞれのファイルにこのオプションを指定する必要があります。デバッグとは無関係のファイルに対してはこのオプションを使用する必要はありません。