Symfoware(R) Server RDBユーザーズガイド 応用プログラム開発編 - FUJITSU - |
目次 索引 |
図:複数の翻訳単位を静的結合する場合の翻訳・結合編集の方法に、複数の翻訳単位を静的結合する場合の翻訳・結合編集の方法を示します。
SQL文を使用する翻訳単位は、sqlcc、sqlfccまたはsqlcobolを使用して翻訳・結合編集を行います。
sqlcc、sqlfccおよびsqlcobolのオプションの指定方法については、“RDBコマンドリファレンス”を参照してください。
応用プログラムによっては、SQL文を使用しない翻訳単位が存在する場合があります。SQL文を使用しない翻訳単位は、ccコマンド、gccコマンド、fccコマンドまたはcobolコマンドを使用して翻訳・結合編集を行います。
また、ロードモジュールを静的結合して作成するには、副プログラムのオブジェクトファイルを作成し、主プログラムに静的に結合編集する必要があります。
表:応用プログラムを静的結合する場合に必要なオプションに、応用プログラムを静的結合する場合に必要なオプションを示します。
翻訳対象の性質 |
指定するオプション |
備考 |
|
---|---|---|---|
SQL文を含む翻訳単位 |
主プログラム |
副プログラムのオブジェクトファイル名 |
結合する副プログラム |
-M |
COBOLの場合に指定 |
||
副プログラム |
-c |
オブジェクトファイルの作成 |
|
SQL文を含まない翻訳単位 |
主プログラム |
副プログラムのオブジェクトファイル名 |
結合する副プログラム |
-M |
COBOLの場合に指定 |
||
-L/opt/FSUNrdb2b/li |
RDBライブラリパス指定(Solaris OEの場合) |
||
-L/opt/FJSVrdb2b/lib |
RDBライブラリパス指定(Linuxの場合) |
||
-lsqldrvm |
RDBライブラリ名(マルチスレッドで動作する応用プログラムを静的結合する場合に使用) |
||
-lsqldrv |
RDBライブラリ名(32ビットマシンで実行する応用プログラムを静的結合する場合に使用) |
||
-lsql64drv(注) |
RDBライブラリ名(64ビットマシンで実行する応用プログラムを静的結合する場合に使用) |
||
副プログラム |
-c |
オブジェクトファイルの作成 |
注) Symfoware Server Enterprise Extended Editionでのみ使用可能です。
以下の例において、sqlfccを利用する場合は、sqlccをsqlfccに、またccをfccに置き換えたものになります。
例1
SQL文を使用する主プログラム(demo04main.sc)と、SQL文を使用する2個の副プログラム(demo04sub1.sc、demo04sub2.sc)を静的結合します。ロードモジュール名は“demo04”とします。
cd /home/rdb2/application/src sqlcc demo04sub1.sc -c sqlcc demo04sub2.sc -c sqlcc demo04main.sc -o ../bin/demo04 demo04sub1.o demo04sub2.o |
例2
SQL文を使用しない主プログラム(demo05main.c)と、SQL文を使用する副プログラム(demo05sub1.sc)、およびSQL文を使用しない副プログラム(demo05sub2.c)を静的結合します。ロードモジュール名は“demo05”とします。
なお、Linuxの場合は、Lオプションに指定するパス名を読み替えてください。
cd /home/rdb2/application/src sqlcc demo05sub1.sc -c cc -c demo05sub2.c cc -o ../bin/demo05 -L/opt/FSUNrdb2b/lib -lsqldrv demo05main.c demo05sub1.o demo05sub2.o |
例3
64ビットマシンで実行する応用プログラムを静的結合する場合(Symfoware Server Enterprise Extended Editionでのみ静的結合可能)の例を示します。SQL文を使用しない主プログラム(demo08main.c)と、SQL文を使用する副プログラム(demo08sub1.sc)、およびSQL文を使用しない副プログラム(demo08sub2.c)を静的結合します。ロードモジュール名は“demo08”とします。
なお、Linuxの場合は、Lオプションに指定するパス名を読み替えてください。
cd /home/rdb2/application/src sqlcc -v9 demo08sub1.sc -c cc -xarch=v9 -c demo08sub2.c cc -xarch=v9 -o ../bin/demo08 -L/opt/FSUNrdb2b/lib -lsql64drv demo08main.c demo08sub1.o demo08sub2.o |
例1
SQL文を使用する主プログラム(demo06main.scob)と、SQL文を使用する2個の副プログラム(demo06sub1.scob、demo06sub2.scob)を静的結合します。ロードモジュール名は“demo06”とします。
cd /home/rdb2/application/src sqlcobol demo06sub1.scob -c sqlcobol demo06sub2.scob -c sqlcobol demo06main.scob -M -o ../bin/demo06 demo06sub1.o demo06sub2.o |
例2
SQL文を使用しない主プログラム(demo07main.cobol)と、SQL文を使用する副プログラム(demo07sub1.scob)、およびSQL文を使用しない副プログラム(demo07sub2.cobol)を静的結合します。ロードモジュール名は“demo07”とします。
cd /home/rdb2/application/src sqlcobol demo07sub1.scob -c cobol -c demo07sub2.cobol cobol -M -o ../bin/demo07 -L/opt/FSUNrdb2b/lib -lsqldrv demo07main.cobol demo07sub1.o demo07sub2.o |
目次 索引 |