35.1.1 コンパイルとリンクを同時に実行する方法
ccbl2002コマンドを使用すると,COBOLプログラムのコンパイルとリンクを同時に実行して,実行可能ファイルを生成できます。
ccbl2002コマンドの詳細については,「33. COBOLソースの作成とコンパイル」を参照してください。
ccbl2002コマンドを使って実行可能ファイルを生成する例を,次に示します。
- 〈この項の構成〉
(1) 一つのCOBOLプログラムから実行可能ファイルを生成する
一つのCOBOLプログラムをコンパイル,リンクして実行可能ファイルを生成する例を,次に示します。
- ソースファイル名称:test01.cbl
IDENTIFICATION DIVISION. PROGRAM-ID. TEST01. : PROCEDURE DIVISION. : STOP RUN.
- ccbl2002コマンドの指定
-
COBOLプログラム"test01.cbl"に-Main,Systemオプションを指定し,実行可能ファイル名称に"test02.exe"を指定します。
ccbl2002 -Main,System test01.cbl -OutputFile test02.exe
上記のコマンドを実行すると,実行可能ファイル"test02.exe"が生成されます。
(2) 複数のCOBOLプログラムから実行可能ファイルを生成する
複数のCOBOLプログラムをコンパイル,リンクして実行可能ファイルを生成する例を,次に示します。
- ccbl2002コマンドの指定
-
主プログラムである"test01.cbl"に-Main,Systemオプションを指定し,副プログラムである"test02.cbl"には何も指定しないでccbl2002コマンドを実行します。
ccbl2002 -Main,System test01.cbl test02.cbl -OutputFile test03.exe
上記のコマンドを実行すると,実行可能ファイル"test03.exe"が生成されます。
(3) COBOLプログラムとCプログラムの混在した実行可能ファイルを生成する
COBOLプログラムとCプログラムが混在する実行可能ファイルを作成する場合,CプログラムをあらかじめCコンパイラでコンパイルし,オブジェクトファイルを生成しておく必要があります。
- ccbl2002コマンドの指定
-
COBOLプログラム"test01.cbl"と,あらかじめ作成しておいたCプログラムのオブジェクトファイル"test02.obj"を指定します。
ccbl2002 -Main,System test01.cbl test02.obj -OutputFile test03.exe
(4) COBOLプログラムと標準ライブラリをリンクして実行可能ファイルを生成する
標準ライブラリとは,オブジェクトファイルから構成され,ライブラリ管理ツールLIBによって作成されたライブラリです。標準ライブラリを使用すると,複数のオブジェクトファイルを一つにまとめて管理できます。
ライブラリ管理ツールLIBについては「38.2 ライブラリ管理ツール」を参照してください。
ccbl2002コマンドを使って,オブジェクトファイルのリンクと同様に標準ライブラリをリンクできます。
標準ライブラリを使用した実行可能プログラムを作成する例を次に示します。
この場合,ccbl2002コマンドで標準ライブラリに取り込みたいCOBOLプログラムのオブジェクトファイル(.obj)を生成しておき,libコマンドで標準ライブラリとしてリンクします。そのあと,ccbl2002コマンドで実行可能ファイル(main1.exe)を生成します。
ccbl2002 SAMPLE1.cbl -Compile,NoLink ccbl2002 SAMPLE2.cbl -Compile,NoLink ccbl2002 SAMPLE3.cbl -Compile,NoLink lib SAMPLE1.obj SAMPLE2.obj SAMPLE3.obj /OUT:SAMPLE.lib ccbl2002 -Main,System MAIN1.cbl SAMPLE.lib -OutputFile main1.exe
なお,開発マネージャを使用して標準ライブラリをリンクすることもできます。この場合は,次の手順で実行可能ファイルを作成してください。
-
開発マネージャの標準ライブラリのプロジェクトを作成する。
-
1.で作成したプロジェクトをビルドする。
-
開発マネージャで実行可能ファイルのプロジェクトを作成する。
-
2.で生成された標準ライブラリをオプションの「ライブラリの指定」または「ソースファイルの追加」でプロジェクトに追加する。
-
4で作成したプロジェクトをビルドする。
標準ライブラリをリンクした実行可能ファイルが作成されます。
なお,開発マネージャの操作方法については,マニュアル「COBOL2002 操作ガイド」を参照してください。
- 使用する機能によって必要となるライブラリ
-
標準ライブラリを構成するソースが次の機能を使用している場合,標準ライブラリをリンクしている実行可能プログラムのリンク時に,関連するライブラリを指定する必要があります。ただし,開発マネージャで作成した標準ライブラリをリンクする場合は,これらのライブラリを指定する必要はありません。
機能
ライブラリ
OLE2オートメーション機能を使用していて,-TDInfオプションを指定した場合
cbl2kgul.lib
整列併合機能を使用する場合
libmsort.lib(Windows(x86) COBOL2002の場合)
libnsort64.lib(Windows(x64) COBOL2002の場合)
COBOL85 Version 4.0以前の整列併合機能を使っているオブジェクトファイルがある場合
libnsort.lib※
通信節での画面データの送受信・帳票データの送信機能を使用する場合(XMAP3)
x3mwdr32.lib(Windows(x86) COBOL2002の場合)
x3mwdr64.lib(Windows(x64) COBOL2002の場合)
-XMAP,LinePrint(XMAP3での書式印刷機能)オプションを指定した場合
x3klib32.lib※
-CompatiM7(MIOS7 COBOL85互換)オプションを指定した場合
jcm7lib.lib※
データコミュニケーション機能を使用していて,-OpenTP1オプションを指定した場合
libmcf.lib