サーバアプリケーションとスケルトンをコンパイル・リンクする方法について、以下に例を示します。
Microsoft(R) Visual C++(R) .NET/Microsoft(R) Visual Studio(R)を使用してコンパイル・リンクする場合は、以下を設定してください。
オプションを設定します。以下の表に示すオプションを設定してください。
カテゴリ | 項目 | 設定値 |
---|---|---|
コード生成(Code Generation) | 構造体メンバのアライメント(Struct Member Byte Alignment) | 4バイト |
使用するランタイム | マルチスレッド(DLL) | |
プリプロセッサ(Preprocessor) | プリプロセッサの定義(Symbols and Macros to Define) | “OM_PC”、“OM_WIN32_BUILD”、“__STDC__”を追加 |
Microsoft(R) Visual C++(R) .NET Standard/Microsoft(R) Visual C++(R) .NET Standard 2003/Microsoft(R) Visual Studio 2005の場合は、[プロジェクト]-[プロパティ]-[構成プロパティ]-[C/C++]で設定画面を表示できます。
インクルードファイルおよびライブラリファイルの格納パスを設定します。
[登録例](VC++を“C:\MSDEV”、本製品を“C:\Interstage”にインストールした場合)
インクルードファイル:
C:\MSDEV\INCLUDE;C:\MSDEV\MFC\INCLUDE;C:\Interstage\ots\include
ライブラリファイル:
C:\MSDEV\LIB;C:\MSDEV\MFC\LIB;C:\Interstage\ots\lib
Microsoft(R) Visual C++(R) .NET Standard/Microsoft(R) Visual C++(R) .NET Standard 2003の場合は、[ツール]-[オプション]-[Projects]-[VC++ ディレクトリ]の“インクルード ファイル”/“ライブラリ ファイル”で設定画面を表示できます。
Microsoft(R) Visual Studio 2005の場合は、[ツール]-[オプション]-[プロジェクトおよびソリューション]- [VC++ ディレクトリ]の“インクルード ファイル”/“ライブラリ ファイル”で設定画面を表示できます。
■サーバライブラリ
以下のライブラリをリンクします。データベース連携サービスのライブラリは、CORBAサービスのライブラリより前にリンクしてください。
以下のファイルをリンクしてください。
使用用途 | ファイル名 | 格納パス |
---|---|---|
サーバアプリケーションの運用環境用・データベースアクセスアプリケーション用 | fjotsld.obj | C:\Interstage\ots\lib(注2) |
libservapl.lib(注1) | ||
libtacebasent.lib | ||
サーバアプリケーションの運用環境用 | libservaplcpp.lib | |
中継サーバアプリケーションの運用環境用 | libservaplcnt.lib(注1) |
注1)中継サーバアプリケーションを作成する場合は、libservaplcnt.libをリンクしてください。この場合、libservapl.libをリンクする必要はありません。詳細については、“4.6.1 中継アプリケーションの作成について”を参照してください。
注2)本製品のインストールパスがデフォルトの場合のパスです。
使用するデータベースに応じて、必要なファイルをリンクしてください。
使用用途 | ファイル名 | 格納パス |
---|---|---|
Oracle11gにアクセスするサーバアプリケーションの運用環境用 | otsxaora11g.dll | C:\Interstage\ots\program\rsc(注) |
otsxaora11g.lib | ||
Oracle10gにアクセスするサーバアプリケーションの運用環境用 | otsxaora10g.dll | |
otsxaora10g.lib | ||
MQDにアクセスするサーバアプリケーションの運用環境用 | otsxamqd.dll | |
otsxamqd.lib | ||
MQDとOracle10gにアクセスするサーバアプリケーションの運用環境用 | otsxamqd_ora10g.dll | |
otsxamqd_ora10g.lib |
注)本製品のインストールパスがデフォルトの場合のパスです。
使用するデータベースに応じて、必要なファイルをリンクしてください。
データベース | ファイル名 | 格納パス |
---|---|---|
Oracle11g | oraxa11.lib | Oracleホーム・ディレクトリ\RDBMS |
oci.lib | Oracleホーム・ディレクトリ\OCI\lib | |
orasql11.lib | Oracleホーム・ディレクトリ\precomp | |
Oracle10g | oraxa10.lib | Oracleホーム・ディレクトリ\rdbms |
oci.lib | Oracleホーム・ディレクトリ\oci\lib | |
orasql10.lib | Oracleホーム・ディレクトリ\precomp | |
Oracle9i | oraxa9.lib | Oracleホーム・ディレクトリ\rdbms\XA |
oci.lib | Oracleホーム・ディレクトリ\oci\lib\msvc | |
orasql9.lib | Oracleホーム・ディレクトリ\precomp\lib | |
SQL Server | ntwdblib.lib | SQL Serverのインストールパス\80\Tools\DevTools\Lib |
CORBAサービス提供ライブラリのORBコア、インタフェースリポジトリ、およびネーミングサービスをリンクしてください。CORBAサービス提供ライブラリのファイル名および格納パスについては、“アプリケーション作成ガイド(CORBAサービス編)”の“提供プログラム”-“CORBAサービスの提供プログラム”-“ライブラリ”-“サーバ用ライブラリ”を参照してください。
コンパイル・リンクの例を以下に示します。以下は、Forte Developer 6シリーズのコンパイラを使用した場合の例です。
/opt/SUNWspro/bin/CC -lsocket -lnsl -L/opt/FSUNots/lib -lservapl -lservaplcpp50 -ltacebasent \ -L/opt/FSUNod/lib/nt -lOM -lOMcpp50 -lOMcncpp50 -L/opt/oracle/lib -lclntsh \ -o test1_s_c++ test1_s_c++.o test1_skel_c++.o test1_cdr.o test1_c++.o /opt/FSUNots/program/xa/libotsxaora.o
\:継続行
リンクオプションに、“-lC”および“-lCrun”を指定しないでください。
■サーバライブラリ
以下のライブラリをリンクします。上から順にリンクしてください。
以下のファイルをリンクしてください。
使用用途 | ファイル名 | 格納パス |
---|---|---|
サーバアプリケーションの運用環境用・データベースアクセスアプリケーション用 | libservapl.so(注1) | /opt/FJSVots/lib(注2) |
libtacebasent.so | ||
サーバアプリケーションの運用環境用 | libservaplcpp50.so | |
中継サーバアプリケーションの運用環境用 | libservaplcnt.so(注1) |
注1)中継サーバアプリケーションを作成する場合は、libservaplcnt.soをリンクしてください。この場合、libservapl.soをリンクする必要はありません。詳細については、“4.6.1 中継アプリケーションの作成について”を参照してください。
注2)本製品のインストールパスがデフォルトの場合のパスです。
使用するデータベースに応じて、必要なファイルをリンクしてください。
使用用途 | ファイル名 | 格納パス |
---|---|---|
Oracleにアクセスするサーバアプリケーションの運用環境用 | libotsxaora.o | /opt/FSUNots/program/xa(注) |
MQDにアクセスするサーバアプリケーションの運用環境用 | libotsxamqd.o | |
MQDとOracleにアクセスするサーバアプリケーションの運用環境用 | libotsxamqd_ora.o |
注)本製品のインストールパスがデフォルトの場合のパスです。
使用するデータベースに応じて、必要なファイルをリンクしてください。
データベース | ファイル名 | 格納パス |
---|---|---|
Oracle11g/Oracle10g | libclntsh.so | Oracleホーム・ディレクトリ/lib32 |
Oracle9i | libclntsh.so | Oracleホーム・ディレクトリ/lib |
CORBAサービス提供ライブラリのORBコア、インタフェースリポジトリ、およびネーミングサービスをリンクしてください。CORBAサービス提供ライブラリのファイル名および格納パスについては、“アプリケーション作成ガイド(CORBAサービス編)”の“提供プログラム”-“CORBAサービスの提供プログラム”-“ライブラリ”-“サーバ用ライブラリ”を参照してください。
コンパイル・リンクの例を以下に示します。
g++ -lsocket -lnsl -L/opt/FJSVots/lib -lservapl -lservaplcpp -ltacebasent \ -L/opt/FJSVod/lib/nt -lOM -lOMcpp -lOMcncpp -L/opt/oracle/lib -lclntsh \ -o test1_s_c++ test1_s_c++.o test1_skel_c++.o test1_cdr.o test1_c++.o \ /opt/FJSVots/program/xa/libotsxaora.o
\:継続行
■サーバライブラリ
以下のライブラリをリンクします。上から順にリンクしてください。
以下のファイルをリンクしてください。
使用用途 | ファイル名 | 格納パス |
---|---|---|
サーバアプリケーションの運用環境用・データベースアクセスアプリケーション用 | libservapl.so(注1) | /opt/FJSVots/lib(注2) |
libtacebasent.so | ||
サーバアプリケーションの運用環境用 | libservaplcpp.so | |
中継サーバアプリケーションの運用環境用 | libservaplcnt.so(注1) |
注1)中継サーバアプリケーションを作成する場合は、libservaplcnt.soをリンクしてください。この場合、libservapl.soをリンクする必要はありません。詳細については、“4.6.1 中継アプリケーションの作成について”を参照してください。
注2)本製品のインストールパスがデフォルトの場合のパスです。
使用するデータベースに応じて、必要なファイルをリンクしてください。
使用用途 | ファイル名 | 格納パス |
---|---|---|
Oracleにアクセスするサーバアプリケーションの運用環境用 | libotsxaora.o | /opt/FJSVots/program/xa(注) |
注)本製品のインストールパスがデフォルトの場合のパスです。
使用するデータベースに応じて、必要なファイルをリンクしてください。
データベース | ファイル名 | 格納パス |
---|---|---|
Oracle | libclntsh.so | Oracleホーム・ディレクトリ/lib |
CORBAサービス提供ライブラリのORBコア、インタフェースリポジトリ、およびネーミングサービスをリンクしてください。CORBAサービス提供ライブラリのファイル名および格納パスについては、“アプリケーション作成ガイド(CORBAサービス編)”の“提供プログラム”-“CORBAサービスの提供プログラム”-“ライブラリ”-“サーバ用ライブラリ”を参照してください。