[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) がそのマシン上で実行している必要があります。
リモート マシン上でアプリケーションを開発している場合
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 を使用している場合は、空きポートが見つかるまで次のポートが試みられます。その範囲内で空きポートが見つからなかった場合は、ユーティリティはエラーを返します。
注:port オプションとして設定したものと同じ番号をデバッグ構成の [cobdebugremote port] フィールドに入力する必要があります。
repeat
デバッグ セッションの完了後に、別の接続のリスンを開始します。オプションを指定しなかった場合、プロセスはデバッグ セッションの完了後に終了します。
stop
ポートでリスンしているプロセスを終了させます。port オプションと併用する必要があります。これは、プロセスが接続を待っている場合にのみ有効です。
オプションなしでプロセスを実行する場合は、コンソールに表示されたポート番号を [cobdebugremote port] フィールドに入力する必要があります。
[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'] を選択します。
  • 手続き部のエントリ ポイントが呼び出されたときのみにプログラム ブレークポイントによって実行が停止するように指定するには、[Program breakpoint on main entry point only] をオンにします。このオプションをオンにしないと (デフォルト設定)、プログラムへのどのエントリ ポイントでも、また呼び出しからプログラムに戻る時点でも、プログラム ブレークポイントによって実行が停止します。
次の設定は、[COBOL Application] デバッグ構成にのみ適用されます。
[Main Program]
プロジェクト内のメイン実行可能ファイルを選択します。これをビルド構成で既に選択している場合は、ビルド構成名を入力するだけで済みます。それ以外の場合は、プロジェクト内のプログラムの場所をブラウズすることができます。
[Start Options]
プログラムの起動時にそのプログラムに渡す引数を入力します。また、プロジェクトが明示的にアプリケーションの作業ディレクトリを指定していない場合は、そのディレクトリの場所を示すこともできます。
[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]
リモート プロジェクトのホスト上にある特定のリモート ファイル システム フォルダーを指定する場合にクリックします。このオプションを使用できるのは、リモート プロジェクトがセットアップされていて、[General] タブの [COBOL Project] フィールドで選択されている場合だけです。
[Working Set]
ワーキング セットで定義されているすべての表示可能なプロジェクトのソース検索パスを追加する場合にクリックします。詳細については、「Working Sets」を参照してください。
[Workspace]
現在のワークスペースのすべてのフォルダーを検索する場合にクリックします。
[Workspace Folder]
ワークスペースの特定のフォルダーをソース検索パスとして指定する場合にクリックします。