ダウンロード プログラム連携の実際その1サンプルコード (666.0 B)
ダウンロード プログラム連携の実際その2サンプルコード (698.0 B)
コンパイル方法
前回は複数のOpenCOBOLソースにおけるコンパイル方法について説明しました。OpenCOBOLコンパイラにはC言語との変換機能があり、Cコンパイラと連携機能も備えているので、連携するC言語についてもOpenCOBOLコンパイラでコンパイルすることができます。
直接実行型ファイルを作成するコンパイルコマンド
ソースファイルからオブジェクトファイルを作成せずに、直接実行型ファイルを作成するコンパイルコマンドは、次のとおりです。
cobc -x -o 実行ファイル名 メイン処理プログラムソースファイル名 連携先プログラムソースファイル名
-oスイッチと実行ファイル名の省略は、前回説明した通りです。また、連携先プログラムが複数ある場合、全ソースファイル名を指定するのも前回と同様です。
指定されたソースファイル名の拡張子が「.c」の場合、C言語ソースとしてコンパイルします。C言語ソースは、メイン処理プログラムと連携先プログラムのいずれにも指定できます。
メイン処理プログラムソースファイル名を「mainprog.c」、連携先プログラムソースファイル名をそれぞれ「subprog1.cob」「subprog2.c」、実行ファイル名を「progexe」とした場合のコンパイルコマンド例は、次のとおりです。
/usr/local/bin/cobc -x -o progexe mainprog.cob subprog1.cob subprog2.c
前回も説明しましたが、各ソースの規模が大きく、多数の連携先プログラムソースがある場合は、次項で説明する分割コンパイルがお勧めです。
分割コンパイルによる実行型ファイルを作成する方法
ソースファイルからオブジェクトファイルを作成し、最後に実行型ファイルを作成するコンパイルコマンドについて説明します。
OpenCOBOLのコンパイル方法
詳細は前回説明したので、省きます。コンパイルコマンドは次のとおりです。
cobc -c -x -o オブジェクトファイル名 メイン処理プログラムソースファイル名
cobc -c -o オブジェクトファイル名 連携先プログラムソースファイル名
Cのコンパイル方法
Cで作成したプログラムもcobcコマンドでコンパイル可能です。OpenCOBOLで作成したメイン処理プログラムのコンパイルは-xスイッチを付けますが、C言語で作成したメイン処理プログラムのコンパイルには-xスイッチを付けません。また、gccによるコンパイルも可能です。
cobc -c -o オブジェクトファイル名 ソースファイル名
gcc -c -o オブジェクトファイル名 ソースファイル名
実行型ファイルの作成
メイン処理プログラムと連携先プログラムのコンパイルが終了しており、実行型ファイルを作成するコマンドは次のとおりです。
cobc -x -o 実行型ファイル名 メイン処理プログラムオブジェクトファイル名 その他のオブジェクトファイル名
ソースファイル名で指定するのではなく、オブジェクトファイル名で指定する点を除けば、先に説明した「直接実行型ファイルを作成するコンパイルコマンド」と同じ内容です。その他のオブジェクトファイル名が複数ある場合は、すべてのオブジェクトファイル名を指定します。
メイン処理プログラムオブジェクトファイル名を「mainprog.o」、その他のオブジェクトファイル名を「subprog1.o」「subprog2.o」、実行ファイル名を「progexe」とした場合のコンパイルコマンド例は次のとおりです。
/usr/local/bin/cobc -x -o progexe mainprog.o subprog1.o subprog2.o
この記事は参考になりましたか?
- COBOLプログラミング連載記事一覧
-
- OpenCOBOLと他言語の連携
- COBOL言語をLinux環境で動かす その2
- COBOLプログラミング ファイル処理編その2
- この記事の著者
-
布施 榮一(ふせえいいち)
布施加工有限会社 代表取締役布施加工って何しているとこなの??実はIT屋さんだったりします(笑)Linux基盤各種サービスの設計構築およびコンサルティングをやっています。ブログもちょこちょこっと書いてます。Alinous-Core 正規販売代理店
※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です
この記事は参考になりましたか?
この記事をシェア
