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

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

[General] タブ

[Debug Configurations] ダイアログ ボックスの [General] タブのオプションのうち、これらの構成に共通のものは次のとおりです。

[COBOL Project]
デバッグ中に使用されるプロジェクトです。
[Connection Properties]
プロジェクトまたはリモート マシン上で実行されているアプリケーションをデバッグする場合は、これらのフィールドに値を入力します。
[Remote Host]
リモート マシンの名前または IP アドレス。
[Specify the port on which cobdebugremote process will listen on the remote host]
リモート マシン上でアプリケーションをデバッグする場合は、cobdebugremote(Windows) または cobdebugremote32(UNIX) プロセス (64 ビット プロセスの場合は cobdebugremote64) がそのマシン上で実行されている必要があります。1
リモート マシン上でアプリケーションを開発している場合
Micro Focus Enterprise Developer UNIX Componentsを使用している場合は、デバッグを開始すると、IDE が cobdebugremote(Windows) または cobdebugremote32(UNIX) プロセス (64 ビット プロセスの場合は cobdebugremote64) をリモート マシン上で自動的に起動します。プロセスの起動時にはランダムなポートが選択されるため、ユーザーがポートを選択する必要はありません。ただし、このオプションを選択した場合は、[cobdebugremote port] フィールドで特定のポートを割り当てることができます。ポートを指定すると、プロセスはそのポートで自動的に起動します。
ローカル マシン上でアプリケーションを開発し、リモートでデバッグしている場合
最初に、cobdebugremote(Windows) または cobdebugremote32(UNIX) プロセス (64 ビット プロセスの場合は cobdebugremote64) をコマンド プロンプトから起動する必要があります。
プロセスのオプションは次のとおりです。
no options
Starts the process and opens a random port for remote connections. The port number is displayed in the console.
machine=name
Specify the machine that the process is running on. Only valid with the stop option.
port
port=nnnnn
Specify the port to use to listen for connection requests.
port=nnnnn-yyyyy
Specify the range of ports to use. If port nnnnn is in use, the next port is tried until a free port is found. If no free ports are found in the range, the utility returns an error.
注: You must enter the same number you set as the port option in the cobdebugremote port field of your debug configuration.
repeat
After the debug session has been completed, start listening for another connection. If no option is specified, the process exits after the debug session has completed.
stop
Causes the process that is listening on the port to exit. Must be used with the port option. This is only valid when the process is waiting for a connection.
オプションなしでプロセスを実行する場合は、コンソールに表示されたポート番号を [cobdebugremote port] フィールドに入力する必要があります。
[Use X Server]
SSH のみの接続タイプ (Micro Focus DevHub SSH Only) の場合、リモート プログラムの出力をローカル マシンで表示するために X Server 実装を使用する必要はありません。単純な I/O プログラムであれば、IDE 内の [Console] ビューで出力を表示できます。複雑なプログラムの場合は、見やすくするために X Server 実装を使用することもできます。
プログラム出力を [Console] ビューに送る場合は、[Use X Server] が選択されていないことを確認してください。他の接続タイプの場合は、このオプションは使用できず、X Server 実装を使用する必要があります。
[X Server (DISPLAY)]
Micro Focus Enterprise Developer UNIX Componentsを使用してリモート UNIX マシン上でアプリケーションをデバッグする場合は、ローカル Windows マシン上でリモート プログラム出力を表示する X サーバーの識別子を入力します。デフォルト値は、client machine name:0.0 です。
デバッグを行う前に、X サーバーが実行されていること、およびリモート マシンの xhost 構成に正しいアクセス権限があることを確認してください。xhost + コマンドを使用すると、許可されているホストまたはユーザー名のリストに自分のホストまたはユーザー名を追加できます。
[Debug Options]
デバッグ プロセスをさらに制御するには、これらのオプションを使用します。
  • デバッグを正しく機能させるには、デバッグ中のアプリケーションが 64 ビットまたはグラフィカルであるときに、それを示す必要があります。
  • STOP RUN コマンドが実行されたときに、プログラムを終了するのではなく一時停止してデバッグを継続する場合は、[Suspend at 'stop run'] を選択します。
  • 手続き部のエントリ ポイントが呼び出されたときのみにプログラム ブレークポイントによって実行が停止するように指定するには、[Program breakpoint on main entry point only] をオンにします。このオプションをオンにしないと (デフォルト設定)、プログラムへのどのエントリ ポイントでも、また呼び出しからプログラムに戻る時点でも、プログラム ブレークポイントによって実行が停止します。
  • デバッグ中に実行パスを前後にたどれるようにするには、[Enable reverse debugging] を選択します。
    注: このオプションは、リバース デバッグをサポートするプラットフォーム上にあるプロジェクト/プログラムを選択した場合にのみ選択できます。サポートされるプラットフォームのリストについては、「リバース デバッグおよびライブ記録」を参照してください。
次の設定は、[COBOL Application] デバッグ構成にのみ適用されます。
[Main Program]
プロジェクト内のメイン実行可能ファイルを選択します。これをビルド構成ですでに選択している場合は、ビルド構成名を入力するだけで済みます。それ以外の場合は、プロジェクト内のプログラムの場所をブラウズすることができます。
[Start Options]
プログラムの起動時にそのプログラムに渡す引数を入力します。また、プロジェクトが明示的にアプリケーションの作業ディレクトリを指定していない場合は、そのディレクトリの場所を示すこともできます。
[Run Options]
アプリケーション端末が実行完了後に自動的に閉じないようにするには、[Pause after running the application] をオンにします。このオプションを使用すると、端末の出力を確認する時間を確保できます。端末を閉じるには、Enter を押します。
[Debug Options]
  • COBOL コードでコンパイルされた実行可能ファイルをデバッグするには、[Allow debugging of all COBOL target types] を選択します。このオプションを選択しない場合は、.int コードのみがデバッグされます。このタイプのデバッグを選択した場合、COBOL プログラムと COBOL 以外のプログラムが相互に呼び出す非 COBOL プロジェクトをデバッグすることはできません。
  • すべての Windows プログラムはマルチスレッド ランタイム システムで実行されます。UNIX プログラムの場合、これと同じことを行うには [Use multi-thread run-time system] を選択します。選択しなかった場合は、シングルスレッド システムが使用されます。
次の設定は、[COBOL Wait for Application Attachment] デバッグ構成にのみ適用されます。
[Matching Options]
プログラムが開始するとデバッガーがアタッチするプログラムを指定します。
  • [Any] - デバッグが有効になっているすべてのプロセスにアタッチします。たとえば、環境変数 COBSW=+A が使用されている場合や、CBL_DEBUG_START が呼び出された場合です。
    注: このオプションを使用できるのは、Windows で実行されているアプリケーションをデバッグする場合だけです。
  • [Program identifier] - アタッチするプログラムの identifier を指定します。これと一致する identifier が、デバッグ対象のアプリケーションによって呼び出される CBL_DEBUG_START ライブラリ ルーチンにパラメーターとして渡される必要があります。詳細については、「CBL_DEBUG_START」を参照してください。
  • [Executables stored in directory]:
    • Windows プラットフォームでは、プロセスを開始するために使用されるメイン実行可能ファイルが含まれているディレクトリを指定します。
    • UNIX プラットフォームでは、プロセスの現在のディレクトリを指定します。
[Return to waiting state when debugger disconnects]
これを選択すると、デバッガーは、デバッグ可能プログラムがデバッガーに再びアタッチするまで待機します。これを選択しなかった場合、デバッグはプログラムからの切断時に終了します。

[Source] タブ

[Debug Configurations] ダイアログ ボックスの [Source] タブのオプションのうち、これらの構成に共通のものは次のとおりです。

[Source Lookup Path]
デバッガーがソース ファイルを検索する場所および順序を指定できます。

場所を追加するには [Add] をクリックします。

[COBOL Project]
検索するプロジェクトを選択する場合にクリックします。プロジェクトのプロパティの [Micro Focus > Build Path] タブで指定されているフォルダーや依存プロジェクトも検索されます。
[Environment Variable]
検索するフォルダーが含まれている変数を選択する場合にクリックします。
[File System Directory]
ワークスペースの外部に存在する可能性がある特定のファイル システム フォルダーを検索するように指定する場合にクリックします。
[Paths From Debugger Information Files]
.idy ファイルに指定されているパスを使用してソース ファイルを見つける場合にクリックします。このパスは、プログラムのコンパイル時に格納されます。ソース ファイルは、ワークスペースの外部にあってもかまいません。したがって、ソース ファイルが含まれているプロジェクトをソース検索パスに追加する必要はありません。
[Project]
特定のプロジェクトのフォルダーを検索する場合にクリックします。
[Remote File System Directory]
注: このオプションを使用できるのは、リモート プロジェクトをデバッグする場合だけです。
リモート ホスト上のリモート ファイル システム フォルダーにあるソース ファイルを指定する場合にクリックします。[Connection name] フィールドを使用してリモート ホストへの既存の接続を選択するか、[New Connection] をクリックして新しい接続を作成し、[Remote path] フィールドを使用してホスト上のソース ファイルの場所を選択します。必要なソース ファイルをサブフォルダーで再帰的に検索する場合は [Search subfolders] を選択します。
[Working Set]
ワーキング セットで定義されているすべての表示可能なプロジェクトのソース検索パスを追加する場合にクリックします。詳細については、「Working Sets」を参照してください。
[Workspace]
現在のワークスペースのすべてのフォルダーを検索する場合にクリックします。
[Workspace Folder]
ワークスペースの特定のフォルダーをソース検索パスとして指定する場合にクリックします。

[Debug Symbols] タブ

[Debug Configurations] ダイアログ ボックスの [Debug Symbols] タブでこれらの構成に使用できるオプションは次のとおりです。

[Debug Symbols Lookup Path]
デバッガーがデバッグ シンボル コンテナーおよびデバッグ シンボル ファイルを検索する場所および順序を指定できます。

場所を追加するには [Add] をクリックします。

[Environment Variable]
検索するフォルダーが含まれている変数を選択する場合にクリックします。
[File System Directory]
ワークスペースの外部に存在する可能性がある特定のファイル システム フォルダーを検索するように指定する場合にクリックします。
[Project]
特定のプロジェクトのフォルダーを検索する場合にクリックします。
[Remote File System Directory]
注: このオプションを使用できるのは、リモート プロジェクトをデバッグする場合だけです。
リモート ホスト上のリモート ファイル システム フォルダーにあるデバッグ シンボル ファイルを指定する場合にクリックします。[Connection name] フィールドを使用してリモート ホストへの既存の接続を選択するか、[New Connection] をクリックして新しい接続を作成し、[Remote path] フィールドを使用してホスト上のシンボル ファイルの場所を選択します。必要なシンボル ファイルをサブフォルダーで再帰的に検索する場合は [Search subfolders] を選択します。
[Workspace Folder]
ワークスペースの特定のフォルダーをデバッグ シンボル検索パスとして指定する場合にクリックします。
注: デバッグ シンボル コンテナーの長さは 32,725 文字以下でなければなりません。

[CTF]

このタブでは、プログラムの診断情報を生成するように統合化トレース機能 (CTF) を構成できます。

[Enable CTF]
これをオンにすると、ワークスペースにある CTF 構成ファイルが [Available configurations] リストに表示されます。
注: CTF 構成ファイルには .mfctfcfg というサフィックスが必要です。
[Use selected configuration]
選択した構成ファイルを使用する場合にクリックします。クリックすると、選択した構成ファイルに含まれている構成項目が [Chosen configuration] 領域に表示されます。必要に応じて構成項目を変更し、[Apply] をクリックします。
注: [Chosen configuration] 領域で構成を変更しても、元の構成ファイルは変更されません。
[Export]
変更した構成をローカル ファイルシステムのファイルまたはリモートの場所にエクスポートする場合にクリックします。
[Import]
構成をワークスペース外のローカル ファイルシステムのファイルまたはリモートの場所からインポートする場合にクリックします。

CTF 構成ファイルの詳細については、「統合化トレース機能」を参照してください。