Symfoware Parallel Server RDBユーザーズガイド 応用プログラム開発編
目次 索引 前ページ次ページ

第4章 応用プログラムの翻訳・結合編集> 4.4 複数の翻訳単位から構成される応用プログラムの翻訳・結合編集の方法

4.4.1 静的結合する場合の翻訳・結合編集

図:複数の翻訳単位を静的結合する場合の翻訳・結合編集の方法に、複数の翻訳単位を静的結合する場合の翻訳・結合編集の方法を示します。

[図:複数の翻訳単位を静的結合する場合の翻訳・結合編集の方法]

SQL文を使用する翻訳単は、sqlcc、sqlfccまたはsqlcobolを使用して翻訳・結合編集を行います。

sqlcc、sqlfccおよびsqlcobolのオプションの指定方法については、manコマンドを利用して参照してください。

応用プログラムによっては、SQL文を使用しない翻訳単が存在する場合があります。

SQL文を使用しない翻訳単位は、ccコマンド、fccコマンドまたはcobolコマンドを使用して翻訳・結合編集を行います。

また、ロードモジュールを静的結合して作成するには、副プログラムのオブジェクトファイルを作成し、主プログラムに静的に結合編集する必要があります。

表:応用プログラムを静的結合する場合に必要なオプションに、応用プログラムを静的結合する場合に必要なオプションを示します。

[表:応用プログラムを静的結合する場合に必要なオプション]

翻訳対象の性質

指定するオプション

備 考

SQL文を含む翻訳単位

主プログラム

副プログラムのオブジェクトファイル名

結合する副プログラム

-M

COBOLの場合に指定

副プログラム

-c

オブジェクトファイルの作成

SQL文を含まない翻訳単位

主プログラム

副プログラムのオブジェクトファイル名

結合する副プログラム

-M

COBOLの場合に指定

-L /opt/FSUNrdb2b/lib

RDBライブラリパス指定

-l sqldrv

RDBライブラリ名

副プログラム

-c

オブジェクトファイルの作成

■C言語使用時の例

以下の例において、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”とします。
cd  /home/rdb2/application/src                                      
sqlcc demo05sub1.sc  -c                                             
cc  -c  demo05sub2.c                                                
cc  -o ../bin/demo05 -L /opt/uxprdbase/lib -l sqldrv                
    demo05main.c  demo05sub1.o  demo05sub2.o                        

■COBOL使用時の例

例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/uxprdbase/lib -l sqldrv
       demo07main.cobol demo07sub1.o  demo07sub2.o        

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

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