33.4.3 cblbuild2kコマンド
cblbuild2kコマンドは,プロジェクト単位に実行可能ファイル,DLL,または標準ライブラリを生成する方法です。このコマンドは,開発マネージャの[ビルド][リビルド]メニューに対応するものです。
(1) プロジェクトの概念と定義方法
プロジェクトとは,実行単位を構成する資源を一括して管理するための概念です。プロジェクトには,実行単位を構成するソースファイル(登録集原文を含む)や,登録集原文を生成する基となった各種定義ファイル,およびコンパイル時の環境やオプションなどを登録・定義できます。定義したプロジェクトの内容は,プロジェクトマスタファイル(.hmf)に格納されます。プロジェクトマスタファイルには,複数の関連するプロジェクトをまとめて定義できます。なお,COBOL85 Version 5以前のプロジェクトファイルを対象とするときは,元のファイルと同じフォルダにCOBOL2002のプロジェクトマスタファイルが作成されます。
プロジェクト,およびプロジェクトマスタは,開発マネージャ上で定義します。定義方法については,マニュアル「COBOL2002 操作ガイド」を参照してください。
- プロジェクトマスタファイルの保存について
-
プロジェクトマスタファイルは,ビルド,またはリビルドによってプロジェクトマスタ内のプロジェクトの管理情報に変更が生じた場合,自動的に保存されます。ただし,プロジェクトマスタファイル読み込み時に無効なファイルやオプションなどの警告メッセージが表示されたときは,プロジェクトマスタファイルの自動保存は行われません。
(2) ビルドとリビルド
ビルド,リビルドは,プロジェクト内の資源の依存関係を基に,プロジェクト単位に実行可能ファイル,DLL,または標準ライブラリを生成する方法です。
ソースファイルからコンパイル,リンクをするだけでなく,例えば,必要な登録集原文が定義ファイルから生成されていなければ,コンパイルに先立って登録集原文を生成します。
ビルド,リビルドには次のような違いがあります。
(3) コマンドの形式
cblbuild2kコマンドの指定形式を次に示します。
- 形式
cblbuild2k {〔-a〕〔-p〕〔-y〕〔-c〕〔-m〕 入力ファイル名 …|-h|-? }
- -a
-
このオプションを指定するとリビルドが実行されます。
指定しない場合はビルドが実行されます。
- -p
-
このオプションを指定すると,プロジェクトマスタに定義されているすべてのプロジェクトに対してビルドが実行されます。
指定しない場合は,プロジェクトマスタで作業中プロジェクトに設定されたプロジェクトに対して,ビルドが実行されます。
- -y
-
このオプションは,COBOL85 Version 5以前のバージョンからCOBOL2002へ移行するための機能です。
このオプションを指定すると,プロジェクトマスタを作成するかどうかの確認メッセージが表示されません。
指定しない場合は,プロジェクトマスタを作成するかどうかの確認メッセージが表示されます。
- -c
-
このオプションは,COBOL85 Version 5以前のバージョンからCOBOL2002へ移行するための機能です。
このオプションを指定すると,プロジェクトマスタファイルの作成だけを行い,プロジェクトのビルドは実行しません。
指定しない場合は,プロジェクトマスタファイルの作成を行ったあと,プロジェクトのビルドが実行されます。
- -m
-
このオプションは,このシステム以外で作成されたプロジェクトマスタファイルをCOBOL2002へ移行するための機能です。
このオプションを指定すると,入力ファイルがこのシステム以外の開発マネージャで保存されたプロジェクトマスタファイルの場合でも警告メッセージを表示しません。
指定しない場合は,警告メッセージを表示します。
- 入力ファイル名
-
処理の対象となるファイルを指定します。入力ファイルには,次のファイルが指定できます。
-
プロジェクトマスタファイル(.hmf)
入力ファイル名の拡張子を省略した場合は,.hmfが仮定されます。また,入力ファイルには複数のファイルが指定できます。
また,COBOL85で作成したプロジェクトファイルおよびプロジェクトマスタファイルも入力ファイルにできます。
「-」(ハイフン)で始まる名称を指定した場合はエラーになります。
-
- -hまたは-?
-
コマンドの説明が表示されます。
- 規則
-
-
オプションの記号には「-」の代わりに「/」も使用できます。
-
指定されたオプションは,すべての入力ファイルに対して有効となります。
-
(4) 割り込み
cblbuild2kコマンドの実行中に[Ctrl]+[C]キーを押すと,処理を中断して終了します。ただし,各ソースのコンパイル単位で中断を受け付けるため,すぐには中断しない場合があります。
(5) 終了コード
cblbuild2kコマンドは,次の終了コードを返します。
終了コード |
意味 |
---|---|
0 |
cblbuild2kは正常終了した。 |
1 |
cblbuild2kでエラーが発生した。 |
2 |
cblbuild2kがユーザによって中断された。 |
終了コード1が返ってくる条件を,以下に示します。
-
プログラム内で内部エラーが発生した
-
cblbuild2kコマンドが呼び出すコンパイラ,およびリンカが,目的とする生成物を生成できなかった
-
ユーザが「新しいファイルの種類」で登録した生成ツールが,目的とする生成物を生成できなかった
ただし,これは生成ツールが以下の終了コードを返す仕様である必要があります。
目的とする生成物を生成できた場合:0
目的とする生成物を生成できなかった場合:0以外