6.2.5 COBOLでのコンパイル(UNIX)
COBOL2002で作成した,書式オーバレイ印刷用APのコンパイル方法を説明します。
使用するUNIXおよびターゲットの文字コード(シフトJIS,EUC)に応じて手順が異なります。
- 〈この項の構成〉
(1) AIX環境でのコンパイル(シフトJIS)
COBOL2002で記述した書式オーバレイ印刷用APのソースプログラム(xxx.cbl)をAIXのシフトJIS環境でコンパイルする方法について説明します。使用するコマンドは,ccbl2002コマンドです。
(a) オプション
コンパイル時に使用するオプションを次に示します。
-
-OutputFile:リンケージ時に実行形式ファイル名を指定する場合に指定する
-
-XMAP,LinePrint:順編成ファイルをXPプリンタに出力(書式オーバレイおよび行データの印刷制御付き)(必須)
-
-JPN,Alnum:日本語項目などを英数字項目として扱う場合に指定する
-
-Main,System モジュール名:メインモジュールのコンパイルの場合に指定する。複数のモジュールをコンパイルする場合は,メインモジュール名の次にサブモジュール名を指定する
-
-L ライブラリパス:使用するライブラリの検索パスを指定する(必須)
-
-bdynamic:共用ライブラリを使用する場合に指定する(デフォルト)
-
-bstatic:アーカイブライブラリを使用する場合に指定する
-
-lxmovl:書式オーバレイ出力ライブラリを指定する(必須)
-
-lxpw:表示・印刷ライブラリを指定する(必須)
(b) コンパイル例
AIXのシフトJIS環境でのccbl2002コマンドによるコンパイル例を次の図に示します。
(2) AIX環境でのコンパイル(EUC)
COBOL2002で記述した書式オーバレイ印刷用APのソースプログラム(xxx.cbl)をAIXのEUC環境でコンパイルする方法について説明します。使用するコマンドは,ccbl2002コマンドです。
なお,コンパイル時に使用する論理マップおよび動的変更テーブルは文字コードがシフトJISのため,EUCへのコード変換が必要です。
- 注意事項
-
AIXのEUC環境での半角カタカナは,シフトJISとは異なり1バイト文字ではなく,2バイト文字として扱われます。このため,半角カタカナを使用した項目の論理項目長は,レイアウト上の長さの2倍がデフォルトになります。
COBOL APで使用する論理マップ内のデータ名に半角カタカナを指定した場合,コンパイル時にオプションの指定が必要となることがあります(COBOLコンパイル時に半角カタカナを2バイトとして扱うため,72カラムの制限でエラーとなる場合があります)。
(a) オプション
コンパイル時に使用するオプションを次に示します。
-
-OutputFile:リンケージ時に実行形式ファイル名を指定する場合に指定する
-
-XMAP,LinePrint:順編成ファイルをXPプリンタに出力(書式オーバレイおよび行データの印刷制御付き)(必須)
-
-JPN,Alnum:日本語項目などを英数字項目として扱う場合に指定する
-
-EucPosition:半角カタカナ使用時に72カラム制限を抑止する
-
-Main,System モジュール名:メインモジュールのコンパイルの場合に指定する。複数のモジュールをコンパイルする場合は,メインモジュール名の次にサブモジュール名を指定する
-
-L ライブラリパス:使用するライブラリの検索パスを指定する(必須)
-
-bdynamic:共用ライブラリを使用する場合に指定する(デフォルト)
-
-bstatic:アーカイブライブラリを使用する場合に指定する
-
-lxmovl:書式オーバレイ出力ライブラリを指定する(必須)
-
-lxpw:表示・印刷ライブラリを指定する(必須)
(b) コンパイル例
AIXのEUC環境でのccbl2002コマンドによるコンパイル例を次の図に示します。
(3) HP-UX環境でのコンパイル(シフトJIS)
COBOL2002で記述した書式オーバレイ印刷用APのソースプログラム(xxx.cbl)をHP-UXのシフトJIS環境でコンパイルする方法について説明します。使用するコマンドは,ccbl2002コマンドです。
(a) オプション
使用するコンパイルオプションを次に示します。
-
-OutputFile:リンケージ時に実行形式ファイル名を指定する場合に指定する
-
-XMAP,LinePrint:順編成ファイルをXPプリンタに出力(書式オーバレイおよび行データの印刷制御付き)(必須)
-
-JPN,Alnum:日本語項目などを英数字項目として扱う場合に指定する
-
-Main,System モジュール名:メインモジュールのコンパイルの場合に指定する。複数のモジュールをコンパイルする場合は,メインモジュール名の次にサブモジュール名を指定する
-
-L ライブラリパス:使用するライブラリの検索パスを指定する(必須)
-
-Wl,-a,default :共用ライブラリを使用する場合に指定する(デフォルト)
-
-Wl,-a,archive :アーカイブライブラリを使用する場合に指定する
-
-lxmovl:書式オーバレイ出力ライブラリを指定する(必須)
-
-lxpw:表示・印刷ライブラリを指定する(必須)
(b) コンパイル例
HP-UXのシフトJIS環境でのccbl2002コマンドによるコンパイル例を次の図に示します。
(4) HP-UX環境でのコンパイル(EUC)
COBOL2002で記述した書式オーバレイ印刷用APのソースプログラム(xxx.cbl)をHP-UXのEUC環境でコンパイルする方法について説明します。使用するコマンドは,ccbl2002コマンドです。
なお,コンパイル時に使用する論理マップおよび動的変更テーブルは文字コードがシフトJISのため,EUCへのコード変換が必要です。
- 注意事項
-
HP-UXのEUC環境での半角カタカナは,シフトJISとは異なり1バイト文字ではなく,2バイト文字として扱われます。このため,半角カタカナを使用した項目の論理項目長は,レイアウト上の長さの2倍がデフォルトになります。
COBOL APで使用する論理マップ内のデータ名に半角カタカナを指定した場合,コンパイル時にオプションの指定が必要となることがあります(COBOLコンパイル時に半角カタカナを2バイトとして扱うため,72カラムの制限でエラーとなる場合があります)。
(a) オプション
使用するコンパイルオプションを次に示します。
-
-OutputFile:リンケージ時に実行形式ファイル名を指定する場合に指定する
-
-XMAP,LinePrint:順編成ファイルをXPプリンタに出力(書式オーバレイおよび行データの印刷制御付き)(必須)
-
-JPN,Alnum:日本語項目などを英数字項目として扱う場合に指定する
-
-EucPosition:半角カタカナ使用時に72カラム制限を抑止する
-
-Main,System モジュール名:メインモジュールのコンパイルの場合に指定する。複数のモジュールをコンパイルする場合は,メインモジュール名の次にサブモジュール名を指定する
-
-L ライブラリパス:使用するライブラリの検索パスを指定する(必須)
-
-Wl,-a,default :共用ライブラリを使用する場合に指定する(デフォルト)
-
-Wl,-a,archive :アーカイブライブラリを使用する場合に指定する
-
-lxmovl:書式オーバレイ出力ライブラリを指定する(必須)
-
-lxpw:表示・印刷ライブラリを指定する(必須)
(b) コンパイル例
HP-UXのEUC環境でのccbl2002コマンドによるコンパイル例を次の図に示します。