クライアントアプリケーションをコンパイル、およびリンクします。
■LinuxおよびSolarisでのコンパイルとリンク
プロセスモード版とスレッドモード版では、コンパイルオプションが異なります。なお、Linuxのコンパイルには、OSに含まれているコンパイラを使用してください。
クライアントアプリケーションをリンクする際には、以下のライブラリを使用します。
プロセスモード版:libapfwsccl_nt.so、libapfwcdr_nt.so、libapfwcommmessage.so
スレッドモード版:libapfwsccl.so、libapfwcdr.so、libapfwcommmessage.so
また、作成したクライアントアプリケーションに応じて使用するライブラリを追加してください。
コンパイルおよびリンクの例を示します。例では、以下のファイルおよびパスを使用しています。
クライアントアプリケーション:clientapl.c
IDLファイル:sample.idl
C言語クライアントソースファイル:sample_apfwsccl.c
C言語実行基盤インタフェース内部データ用ソースファイル:sample_apfwcdr.c
作成するオブジェクト名:libclientapl.so
インクルードファイルパス:/opt/FJSVibs/include
ライブラリパス:/opt/FJSVibs/lib
C言語クライアントソースファイル、およびクライアントアプリケーションのソースファイルは、同一ディレクトリに格納
(ヘッダファイルもソースファイルと同一ディレクトリに格納されていますので、インクルードファイルパス指定は“.”になります。)
% cc -c -I/opt/FJSVibs/include -I. -xcode=pic32 -m64 -o clientapl.o clientapl.c % cc -c -I/opt/FJSVibs/include -I. -xcode=pic32 -m64 -o sample_apfwsccl.o sample_apfwsccl.c % cc -c -I/opt/FJSVibs/include -I. -xcode=pic32 -m64 -o sample_apfwcdr.o sample_apfwcdr.c % cc -G -xcode=pic32 -m64 -L/opt/FJSVibs/lib -lapfwsccl_nt -lapfwcdr_nt -lapfwcommmessage -o libclientapl.so clientapl.o sample_apfwsccl.o sample_apfwcdr.o |
% cc -c -I/opt/FJSVibs/include -I. -xcode=pic32 -m64 -D_REENTRANT -o clientapl.o clientapl.c % cc -c -I/opt/FJSVibs/include -I. -xcode=pic32 -m64 -D_REENTRANT -o sample_apfwsccl.o sample_apfwsccl.c % cc -c -I/opt/FJSVibs/include -I. -xcode=pic32 -m64 -D_REENTRANT -o sample_apfwcdr.o sample_apfwcdr.c % cc -G -D_REENTRANT -xcode=pic32 -m64 -lpthread -L/opt/FJSVibs/lib -lapfwsccl -lapfwcdr -lapfwcommmessage -o libclientapl.so clientapl.o sample_apfwsccl.o sample_apfwcdr.o |
% gcc -c -I/opt/FJSVibs/include -I. -fPIC -o clinetapl.o clientapl.c % gcc -c -I/opt/FJSVibs/include -I. -fPIC -o sample_apfwsccl.o sample_apfwsccl.c % gcc -c -I/opt/FJSVibs/include -I. -fPIC -o sample_apfwcdr.o sample_apfwcdr.c % gcc -shared -lnsl -fPIC -L/opt/FJSVibs/lib -lapfwsccl_nt -lapfwcdr_nt -lapfwcommmessage -o libclientapl.so clientapl.o sample_apfwsccl.o sample_apfwcdr.o |
% gcc -c -I/opt/FJSVibs/include -I. -fPIC -D_REENTRANT -o clientapl.o clientapl.c % gcc -c -I/opt/FJSVibs/include -I. -fPIC -D_REENTRANT -o sample_apfwsccl.o sample_apfwsccl.c % gcc -c -I/opt/FJSVibs/include -I. -fPIC -D_REENTRANT -o sample_apfwcdr.o sample_apfwcdr.c % gcc -shared -lpthread -lnsl -fPIC -D_REENTRANT -L/opt/FJSVibs/lib -lapfwsccl -lapfwcdr -lapfwcommmessage -o libclientapl.so clientapl.o sample_apfwsccl.o sample_apfwcdr.o |
■Windowsでのコンパイルとリンク
Windowsの場合は“Interstage Business Application Server システム設計ガイド”に記載のVisual Studioを使用して、コンパイル、リンク、およびデバッグを行ってください。
インクルードファイルパスには、以下を指定してください。
インクルードファイルパス:[Interstageのインストールディレクトリ]\BAS\include
ライブラリパスには、以下を指定してください。
ライブラリパス:[Interstageのインストールディレクトリ]\BAS\lib
クライアントアプリケーションをリンクする際には、以下のライブラリを使用します。
スレッドモード版:libapfwsccl.lib、libapfwcdr.lib、libapfwcommmessage.lib
また、作成したクライアントアプリケーションに応じて使用するライブラリを追加してください。
コンパイルを実行する場合は、以下のオプションを設定してください。
カテゴリ | 項目 | 設定値(64bit) |
---|---|---|
コード生成 | 構造体メンバのアライメント | 8バイト |
使用するランタイム | マルチスレッド(DLL) | |
最適化 |
| デフォルトを推奨 |
プリプロセッサ | プリプロセッサの定義 | "APFW_WIN_BUILD","OM_PC","OM_WIN32_BUILD", |
言語 | wchar_tビルトメイン型として扱う | いいえ |
詳細 | 呼び出し規約 | _cdecl |
注1)“__STDC__”を設定することにより、Microsoft拡張機能を前提とする処理でコンパイルエラーが発生する場合があります。この場合、CORBAアプリケーション用の処理とMicrosoft拡張機能を前提とする処理のソースを分けて、Microsoft拡張機能を前提とする処理のソースの先頭に「#undef __STDC__」を追加する対処を行ってください。
注意
Visual Studioを使用してコンパイル、リンクした場合は、対応するバージョンのVisual C++ 再頒布可能パッケージを実行環境にインストールしてください。