Symfoware Server アプリケーション開発ガイド(埋込みSQL編) - FUJITSU - |
目次
索引
![]() ![]() |
第4章 ルーチンを利用するアプリケーションの作成 | > 4.2 ファンクションルーチンを利用する場合 | > 4.2.4 ライブラリの作成 |
ファンクションルーチンのライブラリは、動的リンクライブラリとして作成します。
動的モードを指定して共有オブジェクトを作成します。
cc -KPIC -G -o <ライブラリ名> <ソースファイル名>... |
作成したライブラリは、ファンクションルーチン定義文のLIBRARY句で指定するディレクトリに格納してください。
例
cc -KPIC -G -o /usr/local/lib/libuserfunc001.so userfunc001.cSQLSignalMSG関数を使用する場合は、ライブラリlibsqlsigm.soを動的結合する必要があります。また、インクルードファイルsqlsigm.hをインクルードする必要があります。
例
cc -KPIC -G -o /usr/local/lib/libuserfunc001.so -L/opt/FSUNrdb2b/lib -lsqlsigm -I/opt/FSUNrdb2b/include (1) (2) (3) userfunc001.c(1) RDBライブラリパス指定
(2) RDBライブラリ名
(3) RDBインクルードパス指定
動的モードを指定して共有オブジェクトを作成します。
gcc -fPIC -shared -o <ライブラリ名> <ソースファイル名>... |
作成したライブラリは、ファンクションルーチン定義文のLIBRARY句で指定するディレクトリに格納してください。
例
gcc -fPIC -shared -o /usr/local/lib/libuserfunc001.so userfunc001.cSQLSignalMSG関数を使用する場合は、ライブラリlibsqlsigm.soを動的結合する必要があります。また、インクルードファイルsqlsigm.hをインクルードする必要があります。
例
gcc -fPIC -shared -o /usr/local/lib/libuserfunc001.so -L/opt/FJSVrdb2b/lib -lsqlsigm -I/opt/FJSVrdb2b/include (1) (2) (3) userfunc001.c(1) RDBライブラリパス指定
(2) RDBライブラリ名
(3) RDBインクルードパス指定
Dynamic-Link Libraryを作成します。Microsoft(R) Visual Studioでの作成手順の例を以下に示します。
[ファイル(F)]メニューから、[新規作成(N)]で[プロジェクト(P)]を選択します。
[新しいプロジェクト]ウインドウにて、[プロジェクトの種類(P)]で[Visual C++]の[Win32]を選択し、[テンプレート(T)]で[Win32 プロジェクト]を選択します。
[新しいプロジェクト]ウインドウにて、[プロジェクト名(N)]を指定し、[場所(L)]にライブラリ作成場所を指定します。[ソリューションのディレクトリを作成(D)]のチェックボックスのチェックを外します。[OK]を選択します。
例
プロジェクト名 = USERFUNC001 位置 = D:\FORSYMFO\FUNCMAKE\USERFUNC001指定した位置に、作成したCプログラムファイルを格納しておきます。
[Win32 アプリケーション ウィザード]ウインドウの[Win32 アプリケーション ウィザードへようこそ]の画面にて[次へ>]を選択します。
[Win32 アプリケーション ウィザード]ウインドウの[アプリケーションの設定]の画面にて、[アプリケーションの種類]で[DLL]を選択します。[追加オプション]で[空のプロジェクト(E) ]のチェックボックスをチェックします。[完了]を選択します。
[プロジェクト(P)]の、[既存項目の追加(G)]から、作成したCプログラムファイルをプロジェクトに追加します。
例
D:\FORSYMFO\FUNCMAKE\USERFUNC001\USERFUNC001.C
ファンクションルーチンのライブラリ内でSQLSignalMSG関数を使用する場合は、ライブラリF3CWSQLSIGM.LIBを結合する必要があります。さらに、インクルードファイルSQLSIGM.Hをインクルードする必要があります。
[プロジェクト(P)]から[プロパティ(P)]を選択し、[構成プロパティ]の[リンカ]の[入力]を開いて、[追加の依存ファイル]の指定にライブラリ名F3CWSQLSIGM.LIBを追加します。
[ツール(T)]から[オプション(O)]を選択し、[プロジェクトおよびソリューション]の[VC++ ディレクトリ]を開きます。
[ディレクトリを表示するプロジェクト(S)]に“インクルードファイル”を選択して、[ディレクトリ]にx:\SFWSV\ESQL\INCLUDEが指定されていることを確認します。指定されていなければ、指定を追加します。
[ディレクトリを表示するプロジェクト(S)]に“ライブラリファイル”を選択して、[ディレクトリ]にx:\SFWSV\ESQL\LIBが指定されていることを確認します。指定されていなければ、指定を追加します。
3)および4)における“x”には、Symfoware/RDBをインストールしたドライブ名を指定します。
[ビルド(B)]から[ソリューションのビルド(B)]を選択して、ライブラリを作成します。
作成したライブラリを、ファンクションルーチン定義文のLIBRARY句で指定するディレクトリに格納します。
例
D:\FORSYMFO\FUNCMAKE\USERFUNC001\RELEASE\USERFUNC001.DLL ↓ 複写 D:\FORSYMFO\FUNCLIB\USERFUNC001.DLL
目次
索引
![]() ![]() |