3.11.3 Solarisの場合
Solaris使用時のORACLEアクセスライブラリ再作成方法について説明します。
- 〈この項の構成〉
(1) 適用範囲
ORACLEアクセスライブラリを作成する機能は,次のORACLEシステムを運用している場合に適用してください。
-
Oracle8 R8.0.5
-
Oracle8 R8.0.6
-
Oracle8i R8.1.5
-
Oracle8i R8.1.6
-
Oracle8i R8.1.7
-
Oracle9i R9.0.1
また,ORACLEアクセスライブラリを作成する機能を使用するには,Sun WorkShop Cコンパイラが必要です。
(2) ORACLEアクセスライブラリ再作成の手順
DABrokerでは,ORACLEが提供している各バージョンのOCIサンプルメイクファイルにDABroker専用のリンケージラインを埋め込んで提供しています。使用しているORACLEのバージョンに従い,次の手順で実行してください。
次の手順は,必ず,運用ディレクトリが/opt/DABrokerの環境で実行してください。
DABrokerの運用ディレクトリを/opt/DABroker以外に設定している場合は,いったん,DABrokerのセットアップコマンドで運用ディレクトリを/opt/DABrokerに戻してから実行してください。
(a) Oracle8 8.0.5を使用している場合
-
実行手順
次の環境変数を入力して,実行してください。
(メイクファイル実行手順 標準シェルを使用する場合)
-
環境変数の設定
$ ORACLE_HOME=<ORACLEインストールディレクトリ>
$ export ORACLE_HOME
$ DABLIB_HOME=<DABroker運用ディレクトリ>
$ export DABLIB_HOME
-
ORACLEアクセスライブラリ作成の実行
カレントディレクトリはシェルファイルがあるところへ移動してください。
$ sh ./dab_rdbms7805.sh
これによって,dab_demo_rdbms7805.mkが実行されます。
-
正常終了した場合
再作成用シェルを実行したディレクトリ環境下で,作成したORACLEアクセスライブラリを次のようにコピーしてください。作成したORCLEアクセスライブラリは,再作成用シェルを実行したカレントディレクトリに作成されます。
$ cp libdaO7805.so /opt/DABroker/lib/libdaO7805.so
-
異常終了した場合
「●注意事項」を参照し,メイクファイルを再作成して実行してください。
-
DABroker専用のリンケージライン
DABrokerの提供するdab_demo_rdbms7805.mkは,当製品開発時点のOCIサンプルメイクファイル($ORACLE_HOME/rdbms/demo/demo_rdbms.mk)の最終行に次のラインを追加しています。
################################################################ dab_link: $(ECHODO) $(CC) $(LDFLAGS) -o $(EXE) \ $(DABLIB_HOME)/obj/dacdcntl.o $(DABLIB_HOME)/obj/daO7805.a \ $(OCISHAREDLIBS) \ -lposix4 -ldl -lc -lnsl -lsocket -lthread -G ################################################################
-
注意事項
ORACLEが提供している各バージョンのOCIサンプルメイクファイル($ORACLE_HOME/rdbms/demo/demo_rdbms.mk)は変更される場合があります。このため,DABrokerが提供しているdab_demo_rdbms7805.mkと比較してください。もし,DABroker専用のリンケージライン以外が異なっていた場合,次の手順でdab_demo_rdbms7805.mkを再作成してください。
$ cp $ORACLE_HOME/rdbms/demo/demo_rdbms.mk dab_demo_rdbms7805.mk
コピー後,上記のDABroker専用のリンケージラインを最終行に追加してください。
(b) Oracle8 8.0.6を使用している場合
-
実行手順
次の環境変数を入力して,実行してください。
(メイクファイル実行手順 標準シェルを使用する場合)
-
環境変数の設定
$ ORACLE_HOME=<ORACLEインストールディレクトリ>
$ export ORACLE_HOME
$ DABLIB_HOME=<DABroker運用ディレクトリ>
$ export DABLIB_HOME
-
ORACLEアクセスライブラリ作成の実行
カレントディレクトリはシェルファイルがあるところへ移動してください。
$ sh ./dab_rdbms7806.sh
これによって,dab_demo_rdbms7806.mkが実行されます。
-
正常終了した場合
再作成用シェルを実行したディレクトリ環境下で,作成したORACLEアクセスライブラリを次のようにコピーしてください。作成したORCLEアクセスライブラリは,再作成用シェルを実行したカレントディレクトリに作成されます。
$ cp libdaO7806.so /opt/DABroker/lib/libdaO7806.so
-
異常終了した場合
「●注意事項」を参照し,メイクファイルを再作成して実行してください。
-
DABroker専用のリンケージライン
DABrokerの提供するdab_demo_rdbms7806.mkは,当製品開発時点のOCIサンプルメイクファイル($ORACLE_HOME/rdbms/demo/demo_rdbms.mk)の最終行に次のラインを追加しています。
################################################################ dab_link: $(ECHODO) ld $(LDFLAGS) -o $(EXE) \ $(DABLIB_HOME)/obj/dacdcntl.o $(DABLIB_HOME)/obj/daO7806.a \ $(OCISHAREDLIBS) \ -lposix4 -ldl -lc -lnsl -lsocket -lthread -G ################################################################
-
注意事項
ORACLEが提供している各バージョンのOCIサンプルメイクファイル($ORACLE_HOME/rdbms/demo/demo_rdbms.mk)は変更される場合があります。このため,DABrokerが提供しているdab_demo_rdbms7806.mkと比較してください。もし,DABroker専用のリンケージライン以外が異なっていた場合,次の手順でdab_demo_rdbms7806.mkを再作成してください。
$ cp $ORACLE_HOME/rdbms/demo/demo_rdbms.mk dab_demo_rdbms7806.mk
コピー後,上記のDABroker専用のリンケージラインを最終行に追加してください。
(c) Oracle8i 8.1.5を使用している場合
-
実行手順
次の環境変数を入力して,実行してください。
(メイクファイル実行手順 標準シェルを使用する場合)
-
環境変数の設定
$ ORACLE_HOME=<ORACLEインストールディレクトリ>
$ export ORACLE_HOME
$ DABLIB_HOME=<DABroker運用ディレクトリ>
$ export DABLIB_HOME
-
ORACLEアクセスライブラリ作成の実行
カレントディレクトリはシェルファイルがあるところへ移動してください。
$ sh ./dab_rdbms7815.sh
これによって,dab_demo_rdbms7815.mkが実行されます。
-
正常終了した場合
再作成用シェルを実行したディレクトリ環境下で,作成したORACLEアクセスライブラリを次のようにコピーしてください。作成したORCLEアクセスライブラリは,再作成用シェルを実行したカレントディレクトリに作成されます。
$ cp libdaO7815.so /opt/DABroker/lib/libdaO7815.so
-
異常終了した場合
「●注意事項」を参照し,メイクファイルを再作成して実行してください。
-
DABroker専用のリンケージライン
DABrokerの提供するdab_demo_rdbms7815.mkは,当製品開発時点のOCIサンプルメイクファイル($ORACLE_HOME/rdbms/demo/demo_rdbms.mk)の最終行に次のラインを追加しています。
################################################################ dab_link: $(ECHODO) $(CC) $(LDFLAGS) -o $(EXE) \ $(DABLIB_HOME)/obj/dacdcntl.o $(DABLIB_HOME)/obj/daO7815.a \ $(OCISHAREDLIBS) \ -lposix4 -ldl -lc -lnsl -lsocket -lthread -G ################################################################
-
注意事項
ORACLEが提供している各バージョンのOCIサンプルメイクファイル($ORACLE_HOME/rdbms/demo/demo_rdbms.mk)は変更される場合があります。このため,DABrokerが提供しているdab_demo_rdbms7815.mkと比較してください。もし,DABroker専用のリンケージライン以外が異なっていた場合,次の手順でdab_demo_rdbms7815.mkを再作成してください。
$ cp $ORACLE_HOME/rdbms/demo/demo_rdbms.mk dab_demo_rdbms7815.mk
コピー後,上記のDABroker専用のリンケージラインを最終行に追加してください。
(d) Oracle8i 8.1.6を使用している場合
-
実行手順
次の環境変数を入力して,実行してください。
(メイクファイル実行手順 標準シェルを使用する場合)
-
環境変数の設定
$ ORACLE_HOME=<ORACLEインストールディレクトリ>
$ export ORACLE_HOME
$ DABLIB_HOME=<DABroker運用ディレクトリ>
$ export DABLIB_HOME
-
ORACLEアクセスライブラリ作成の実行
カレントディレクトリはシェルファイルがあるところへ移動してください。
$ sh ./dab_rdbms7816.sh
これによって,dab_demo_rdbms7816.mkが実行されます。
-
正常終了した場合
再作成用シェルを実行したディレクトリ環境下で,作成したORACLEアクセスライブラリを次のようにコピーしてください。作成したORCLEアクセスライブラリは,再作成用シェルを実行したカレントディレクトリに作成されます。
$ cp libdaO7816.so /opt/DABroker/lib/libdaO7816.so
-
異常終了した場合
「●注意事項」を参照し,メイクファイルを再作成して実行してください。
-
DABroker専用のリンケージライン
DABrokerの提供するdab_demo_rdbms7816.mkは,当製品開発時点のOCIサンプルメイクファイル($ORACLE_HOME/rdbms/demo/demo_rdbms.mk)の最終行に次のラインを追加しています。
################################################################ dab_link: $(ECHODO) ld $(LDFLAGS) -o $(EXE) \ $(DABLIB_HOME)/obj/dacdcntl.o $(DABLIB_HOME)/obj/daO7816.a \ $(OCISHAREDLIBS) \ -lposix4 -ldl -lc -lnsl -lsocket -lthread -G ################################################################
-
注意事項
ORACLEが提供している各バージョンのOCIサンプルメイクファイル($ORACLE_HOME/rdbms/demo/demo_rdbms.mk)は変更される場合があります。このため,DABrokerが提供しているdab_demo_rdbms7816.mkと比較してください。もし,DABroker専用のリンケージライン以外が異なっていた場合,次の手順でdab_demo_rdbms7816.mkを再作成してください。
$ cp $ORACLE_HOME/rdbms/demo/demo_rdbms.mk dab_demo_rdbms7816.mk
コピー後,上記のDABroker専用のリンケージラインを最終行に追加してください。
(e) Oracle8i 8.1.7を使用している場合
-
実行手順
次の環境変数を入力して,実行してください。
(メイクファイル実行手順 標準シェルを使用する場合)
-
環境変数の設定
$ ORACLE_HOME=<ORACLEインストールディレクトリ>
$ export ORACLE_HOME
$ DABLIB_HOME=<DABroker運用ディレクトリ>
$ export DABLIB_HOME
-
ORACLEアクセスライブラリ作成の実行
カレントディレクトリはシェルファイルがあるところへ移動してください。
$ sh ./dab_rdbms7817.sh
これによって,dab_demo_rdbms7817.mkが実行されます。
-
正常終了した場合
再作成用シェルを実行したディレクトリ環境下で,作成したORACLEアクセスライブラリを次のようにコピーしてください。作成したORCLEアクセスライブラリは,再作成用シェルを実行したカレントディレクトリに作成されます。
$ cp libdaO7817.so /opt/DABroker/lib/libdaO7817.so
-
異常終了した場合
メイクファイルを再作成し,実行してください。
Oracle8i 8.1.7のdab_demo_rdbms7817.mkファイルは,ORACLEの提供するサンプルメイクファイルを使用していません。このため,表3-34を参照して,修正が必要な場合,修正してください。
なお,表中の番号は,次の内容を示しています。
- 1:DABrokerアクセスライブラリ名称
-
修正しないでください。
- 2:DABroker共用ライブラリ
-
修正しないでください。
- 3:ORACLEクライアントライブラリ,及びOS提供ライブラリ
-
DABrokerのORACLEアクセスライブラリは,ORACLEのOCIプログラムです。ORACLEのマニュアルを参照し,OCIプログラム作成時に必要なORACLEクライアントライブラリ,及びOS提供ライブラリを確認の上,使用している環境に合わせて修正してください。
- 4:DABroker共用オブジェクトファイル
-
修正しないでください。
表3‒34 Oracle8i R8.1.7サンプルメイクファイル 番号
定義文
1
PROGRAM = libdaO7817.so
2
LIBS = -L $(DABLIB_HOME)/lib -ldacommon
3
ORALIB = -L$(ORACLE_HOME)/lib -L$(ORACLE_HOME)/rdbms/lib -lclntsh
3
LDFLAGS = -lposix4 -lthread -ldl -lc -lnsl -lsocket -G
4
OBJS = $(DABLIB_HOME)/obj/dacdcntl.o $(DABLIB_HOME)/obj/daO7817.a
4
all: $(PROGRAM)
4
$(PROGRAM): $(OBJS)
echo "Linking $(PROGRAM) ..."
ld -o $(PROGRAM) $(OBJS) $(LIBS) $(ORALIB) $(LDFLAGS)
echo "done"
(f) Oracle9i 9.0.1を使用している場合
-
実行手順
次の環境変数を入力して,実行してください。
(メイクファイル実行手順 標準シェルを使用する場合)
-
環境変数の設定
$ ORACLE_HOME=<ORACLEインストールディレクトリ>
$ export ORACLE_HOME
$ DABLIB_HOME=<DABroker運用ディレクトリ>
$ export DABLIB_HOME
-
ORACLEアクセスライブラリ作成の実行
カレントディレクトリはシェルファイルがあるところへ移動してください。
$ sh ./dab_rdbms7901.sh
これによって,dab_demo_rdbms7901.mkが実行されます。
-
正常終了した場合
再作成用シェルを実行したディレクトリ環境下で,作成したORACLEアクセスライブラリを次のようにコピーしてください。作成したORCLEアクセスライブラリは,再作成用シェルを実行したカレントディレクトリに作成されます。
$ cp libdaO7901.so /opt/DABroker/lib/libdaO7901.so
-
異常終了した場合
メイクファイルを再作成し,実行してください。
Oracle9i 9.0.1のdab_demo_rdbms7901.mkファイルは,ORACLEの提供するサンプルメイクファイルを使用していません。このため,表3-35を参照して,修正が必要な場合,修正してください。
なお,表中の番号は,次の内容を示しています。
- 1:DABrokerアクセスライブラリ名称
-
修正しないでください。
- 2:DABroker共用ライブラリ
-
修正しないでください。
- 3:ORACLEクライアントライブラリ,及びOS提供ライブラリ
-
DABrokerのORACLEアクセスライブラリは,ORACLEのOCIプログラムです。ORACLEのマニュアルを参照し,OCIプログラム作成時に必要なORACLEクライアントライブラリ,及びOS提供ライブラリを確認の上,使用している環境に合わせて修正してください。
- 4:DABroker共用オブジェクトファイル
-
修正しないでください。
表3‒35 Oracle9i R9.0.1サンプルメイクファイル 番号
定義文
1
PROGRAM = libdaO7901.so
2
LIBS = -L $(DABLIB_HOME)/lib -ldacommon
3
ORALIB = -L$(ORACLE_HOME)/lib -L$(ORACLE_HOME)/rdbms/lib -lclntsh
3
LDFLAGS = -lposix4 -lthread -ldl -lc -lnsl -lsocket -G
4
OBJS = $(DABLIB_HOME)/obj/dacdcntl.o $(DABLIB_HOME)/obj/daO7901.a
4
all: $(PROGRAM)
4
$(PROGRAM): $(OBJS)
echo "Linking $(PROGRAM) ..."
ld -o $(PROGRAM) $(OBJS) $(LIBS) $(ORALIB) $(LDFLAGS)
echo "done"