MessageQueueDirector説明書
目次 索引 前ページ次ページ

第1部 基本機能編> 第6章 アプリケーションの作成> 6.1 アプリケーション環境

6.1.4 プログラムの翻訳/結合

 MQDを使用するアプリケーション(プログラム)を翻訳または結合する場合の留意事項を以下に示します。

 また、Interstageのトランザクション機能を使用する場合は、“アプリケーション作成ガイド(コンポーネントトランザクションサービス編)”および“アプリケーション作成ガイド(データベース連携サービス編)”を参照してください。

 データベースを使用するアプリケーションの翻訳および結合の詳細については、“Symfoware Server RDBユーザーズガイド 応用プログラム開発編”を参照してください。

 翻訳および結合の詳細については、その製品のマニュアルを参照してください。

翻訳

 COBOL言語で作成したプログラムを翻訳する場合は、以下の翻訳オプションを指定します。

 C言語で作成したプログラムを翻訳する場合は、以下のオプションを指定します。

 また、C言語で作成したプログラムの場合は、MQDが提供する以下のインクルードライブラリを指定してください。

------------------------------------------
    $MQD\include
------------------------------------------
    $MQD: MQDのインストール先フォルダ

 COBOL言語で作成したプログラムを翻訳する場合は、以下のオプションを指定します。

PowerCOBOLの場合

Sun日本語COBOLの場合

 C言語で作成したプログラムを翻訳する場合は、以下のオプションを指定します。

 また、C言語で作成したプログラムの場合は、MQDが提供する以下のインクルードライブラリを指定してください。

------------------------------------------
    /opt/FJSVmqd/include
------------------------------------------

注意

 Symfoware/RDBトランザクション連携機能を利用するプログラムのプレコンパイルや翻訳を行う場合は、以下のオプションを指定しないでください。

結合

 プログラムの結合時(COBOL言語の場合は“WINLINK”実行時)には、表6.2に示されるライブラリを動的結合してください。

 プログラムの結合時には、表6.2に示されるライブラリを動的結合してください。

[表6.2 プログラムの結合時に指定するライブラリ]

言語

ライブラリ名

格納場所

用途説明

COBOL

libmqdcobapi.lib

$MQD\lib

MQDのCOBOL言語用インタフェース(必須)

LIBC.lib

$COBOL

COBOL言語用ライブラリ(必須)

F3BICIMP.lib

$COBOL

COBOL言語用ライブラリ(必須)

C

libmqdapi.lib

$MQD\lib

MQDのC言語用インタフェース(必須)

 $MQD: MQDのインストール先フォルダ

 $COBOL: COBOLのインストール先フォルダ

言語

ライブラリ名

格納場所

用途説明

COBOL
(共通)

libmqdcobapi.so

/opt/FJSVmqd/lib

MQDのCOBOL言語用インタフェース
(必須)

libsqldrv.so(注1)

/opt/FSUNrdb2b/lib

Symfoware/RDBのライブラリ
(Symfoware/RDBトランザクション連携機能を使用する場合)

COBOL
(Sun日本語COBOLの場合追加)

librcobol.so

/opt/FJSVCOBop/lib

COBOLランタイム(Sun日本語COBOLの場合必須)

libthread.so(注2)

/usr/lib

スレッドライブラリ(必須)

libc.so

/usr/lib

Cランタイム(必須)

C

libmqdapi.so

/opt/FJSVmqd/lib

MQDのC言語用インタフェース(必須)

libthread.so(注2)

/usr/lib

スレッドライブラリ(必須)

libc.so

/usr/lib

Cランタイム(必須)

libsqldrv.so(注1)

/opt/FSUNrdb2b/lib

Symfoware/RDBのライブラリ
(Symfoware/RDBトランザクション連携機能を使用する場合)

 注1) libsqldrv.soを指定してください。マルチスレッド用のlibsqldrvm.soを指定しないでください。
 注2) libthread.soは、libc.soよりも前に指定する必要があります。
 なお、メッセージ格納ファイルとしてデータベースを使用する場合、環境変数名“LD_LIBRARY_PATH”にSymfowareおよび標準コード変換機能のライブラリ格納先ディレクトリの絶対パスを指定してください。

 COBOL言語で作成した主プログラムを翻訳および結合する場合の例を以下に示します。

----------------------------------------------------------------------------------
PowerCOBOLの場合
    cobol -M -Tm -WC,"NOALPHAL" -o appl1 -lmqdcobapi appl1.cob
Sun日本語COBOLの場合
    cobol -M -WC,"NOALPHAL" -o appl1 -lthread -lc -lrcobol -lmqdcobapi appl1.cob
----------------------------------------------------------------------------------

 COBOL言語で作成した副プログラムを翻訳および結合する場合の例を以下に示します。

-----------------------------------------------------------------------------
PowerCOBOLの場合
    cobol -c -Tm -WC,"NOALPHAL" appl2.cob
    ld    -G -o libappl2.so  appl2.o -lmqdcobapi
Sun日本語COBOLの場合
    cobol -c -WC,"NOALPHAL" appl2.cob
    ld    -G -o libappl2.so  appl2.o -lthread -lc -lrcobol -lmqdcobapi
-----------------------------------------------------------------------------

 C言語で作成したプログラムを翻訳および結合する場合の例を以下に示します。

----------------------------------------------------------------------------------
    cc -mt -DFSUN -I /opt/FJSVmqd/include -lthread -lc -lmqdapi appl3.c -o appl3
----------------------------------------------------------------------------------

目次 索引 前ページ次ページ

All Rights Reserved, Copyright(C) 富士通株式会社 2005