デバッグ構成の作成方法

プログラムをデバッグするには、事前にデバッグ構成が必要です。この構成では、呼び出されたプログラムの検索順序、ランタイム引数、ランタイム調整可能変数、COBOL スイッチなどの項目が定義されます。

  1. [Run > Debug Configurations] をクリックします。
  2. 必要な構成のタイプを選択し、[New Launch Configuration] ボタンをクリックして新しい構成を作成します。

    選択した構成に応じて、さまざまなオプションが右側のペインに表示されます。アプリケーション構成を作成する場合は、適切なタブのオプションを使用して、必要な環境変数、ランタイム引数、および COBOL スイッチを設定できます。

    デバッグしているプロジェクトのタイプによっては、構成フィールドの多くが自動的に入力されます。

    さまざまなタイプのデバッグ構成とそのオプションを次に示します。

[COBOL Application]、[COBOL Attach to Process]、[COBOL Wait for Application Attachment]

COBOL アプリケーションのデバッグの制御を可能にします。既に実行されている別のアプリケーションによって呼びだされたときにアプリケーションをデバッグするには、[COBOL Attach to Process] を使用します。COBOL アプリケーションが実行されるのを待ってから、起動時にそのアプリケーションに接続するには、[COBOL Wait for Application Attachment] を使用します。リモート・アプリケーションは、デバッグ用にコンパイルされている必要があります。

これらの構成に共通するオプションは次のとおりです。

[COBOL Project]
デバッグ中に使用されるプロジェクト。
[Connection Properties]
プロジェクトまたはリモート・マシン上で実行されているアプリケーションをデバッグする場合は、これらのフィールドに値を入力します。
[Remote Host]
リモート・マシンの名前または IP アドレス。
[Specify the port on which cobdebugremote will listen]
リモート・マシン上でアプリケーションをデバッグする場合は、cobdebugremote (Windows) または cobdebugremote32 (UNIX) プロセス (64 ビット・プロセスの場合は cobdebugremote64) がそのマシン上で実行している必要があります。
リモート・マシン上でアプリケーションを開発している場合
Micro Focus Enterprise Developer Unix コンポーネント を使用している場合は、デバッグを開始すると、IDE が cobdebugremote (Windows) または cobdebugremote32 (UNIX) プロセス (64 ビット・プロセスの場合は cobdebugremote64) をリモート・マシン上で自動的に起動します。プロセスの起動時にはランダムなポートが選択されるため、ユーザがポートを選択する必要はありません。ただし、このオプションを選択した場合は、[cobdebugremote port] フィールドで特定のポートを割り当てることができます。ポートを指定すると、プロセスはそのポートで自動的に起動します。
ローカル・マシン上でアプリケーションを開発し、リモートでデバッグしている場合
最初に、cobdebugremote (Windows) または cobdebugremote32 (UNIX) プロセス (64 ビット・プロセスの場合は cobdebugremote64) をコマンド・プロンプトから起動する必要があります。
プロセスはのオプションは次のとおりです。
オプションなし
プロセスを起動し、リモート接続用にランダム・ポートを開きます。ポート番号はコンソールに表示されます。
machine=name
プロセスが実行されているマシンを指定します。stop オプションでのみ有効です。
port
port=nnnnn
接続要求をリスンするために使用するポートを指定します。
port=nnnnn-yyyyy
使用するポートの範囲を指定します。ポート nnnnn を使用している場合は、空きポートが見つかるまで次のポートが試みられます。その範囲内で空きポートが見つからなかった場合は、ユーティリティーはエラーを返します。
repeat
デバッグ・セッションの完了後に、別の接続のリスンを開始します。オプションを指定しなかった場合、プロセスはデバッグ・セッションの完了後に終了します。
stop
ポートでリスンしているプロセスを終了させます。port オプションと併用する必要があります。これは、プロセスが接続を待っている場合にのみ有効です。
オプションなしでプロセスを実行する場合は、コンソールに表示されたポート番号を [Specify the port on which cobdebugremote will listen] フィールドに入力する必要があります。プロセスを実行し、port 値を指定する場合は、代わりにその値を [Specify the port on which cobdebugremote will listen] フィールドに入力します。
[X Server (DISPLAY)]
Micro Focus Enterprise Developer Unix コンポーネント を使用してリモート UNIX マシン上でアプリケーションをデバッグする場合は、ローカル Windows マシン 上でリモート・プログラム出力を表示する X サーバの識別子を入力します。デフォルト値は、client machine name:0.0 です。
デバッグを行う前に、X サーバが実行されていること、およびリモート・マシンの xhost 構成に正しいアクセス権限があることを確認してください。xhost + コマンドを使用すると、許可されているホストまたはユーザ名のリストに自分のホストまたはユーザ名を追加できます。
[Debug Options]
デバッグ・プロセスをさらに制御するには、これらのオプションを使用します。
  • デバッグを正しく機能させるには、デバッグ中のアプリケーションが 64 ビットまたはグラフィカルであるときに、それを示す必要があります。
  • STOP RUN コマンドの実行時に、プログラムの終了ではなく一時停止によってプログラムのデバッグを維持するには、[Suspend at 'stop run'] を選択します。
  • アプリケーションがビルドされたときと同じディレクトリにソース・ファイルが入っている場合にのみブレーク・ポイントをバインドするようにデバッガに指示することができます。
次の設定は、[COBOL Application] デバッグ構成にのみ適用されます。
[Main Program]
プロジェクト内のメイン実行ファイルを選択します。これをビルド構成で既に選択している場合は、ビルド構成名を入力するだけで済みます。それ以外の場合は、プロジェクト内のプログラムの場所をブラウズすることができます。
[Start Options]
プログラムの起動時にそのプログラムに渡す引数を入力します。また、プロジェクトが明示的にアプリケーションの作業ディレクトリを指定していない場合は、そのディレクトリの場所を示すこともできます。
[Debug Options]
  • COBOL コードでコンパイルされた実行ファイルをデバッグするには、[Allow debugging of all COBOL target types] を選択します。このオプションを選択しない場合は、.int コードのみがデバッグされます。このタイプのデバッグを選択した場合、COBOL プログラムと COBOL 以外のプログラムが相互に呼び出すプロジェクトをデバッグすることはできません。
  • Windows プログラムは、すべてマルチスレッド・ランタイム・システムで実行されます。UNIX プログラムの場合、これと同じことを行うには [Use multi-thread run-time system] を選択します。選択しなかった場合は、シングルスレッド・システムが使用されます。
次の設定は、[COBOL Wait for Application Attachment] デバッグ構成にのみ適用されます。
[Matching Options]
プログラムが開始するとデバッガが接続するプログラムを決定します。コードの CBL_DEBUG_START 文で指定された識別子のプログラムや特定のディレクトリに含まれているデバッグ可能なプログラムなど、任意のプログラムを選択できます。
[Return to waiting state when debugger disconnects]
これを選択すると、デバッガは、デバッグ可能なプログラムがデバッガに再接続するまで待機します。これを選択しなかった場合、デバッグはプログラムからの切断時に終了します。

[COBOL Core Dump]

アプリケーションのクラッシュ時にコア・ダンプ・ファイルを保存するには、[COBOL Core Dump] デバッグ構成を使用します。これは、ランタイム調整可能変数 core_on_error と組み合わせて行う必要があります。core_on_error では、どのような場合にコア・ファイルが生成されるのかが指定されます。オプションは次のとおりです。

[COBOL Project]
デバッグ中に使用されるプロジェクト。
[Core Dump File]
コア・ダンプの保存場所を入力します。ディレクトリだけを指定して、コア・ダンプ・ファイル名を指定しなかった場合は、デバッガの起動時にファイル名の入力を促されます。デフォルトのファイル名は cblcore ですが、ランタイム調整可能変数 core_filename を使用して変更することができます。
[Working Directory]
作業ディレクトリを識別します。これは、コア・ダンプ・ファイルを保存するように選択したディレクトリに自動的に設定できます。

[COBOL JVM Application] と [COBOL JVM Remote Application]

Java 仮想マシン・アプリケーションのデバッグを制御するには、これらのデバッグ構成を使用します。[COBOL JVM Remote Application] は、リモート・マシン上で開発された JVM アプリケーションを意味します。
注:Remote COBOL JVM プロジェクトは、初期リリースの機能です。

オプションは次のとおりです。

[COBOL Project]
デバッグ中にプログラム・ソースを特定するために使用されるプロジェクト。
[Main class]
メイン Java クラスとして使用されるクラス。[Search] をクリックすると、アプリケーション内のクラスのリストから選択できます。追加のクラスをワークスペースに表示するには、[Include system libraries when searching for a main class] または [Include inherited mains when searching for a main class] を選択します。
[Stop in main]
デバッグ・モードでプログラムを起動したときにメイン・メソッドでプログラムを停止する場合は、これを選択します。