Interstage Job Workload Server バッチ開発ガイド
|
目次

|
6.2.4.1 バッチアプリケーションライブラリの作成
バッチアプリケーションを修正してから、アプリケーション資産をサーバに転送し、コンパイル・リンクを行います。
■バッチアプリケーションの修正
作成したバッチアプリケーションにC言語実行基盤インタフェース生成ツールで生成したヘッダファイルのインクルードを追加します。

太字部分を追加します
#include "apfwcom.h"
#include "apfw_cdr_lib.h"
#include "AAA_apfw.h" /* C言語実行基盤インタフェース共通ヘッダファイル */
int func1()
{
・・・
return(0);
} |
■アプリケーション資産のサーバへの転送
バッチアプリケーションを作成するために、アプリケーション資産をサーバに転送します。
任意のディレクトリを作成し、以下をサーバに格納します。
- バッチアプリケーションのソースファイル
- バッチアプリケーションのヘッダファイル
- C言語実行基盤インタフェースソースファイル
- C言語実行基盤インタフェース共通ヘッダファイル
- 内部データ用ソースファイル
- 内部データ用ヘッダファイル
■コンパイル・リンク
プロセスモード版とスレッドモード版では、コンパイルオプションが異なります。
なお、Linuxのコンパイルには、OSに含まれているコンパイラを使用してください。
バッチアプリケーションをリンクする際には、以下のライブラリをリンクする必要があります。
・プロセスモード版:libapfwcdr_nt.so
・スレッドモード版:libapfwcdr.so
・格納先:/opt/FJSVibs/lib
また、作成したバッチアプリケーションに応じて使用するライブラリを追加してください。

コンパイルおよびリンクの例を示します。例では、以下のファイルおよびパスを使用しています。
- バッチアプリケーション:batchapl.c
- C言語実行基盤インタフェースソースファイル:IDL_apfwskel.c
- C言語実行基盤インタフェース内部データ用ソースファイル:IDL_apfwcdr.c
- 作成するオブジェクト名:libbatchapl.so
- インクルードファイルパス:/opt/FJSVibs/include
- ライブラリパス:/opt/FJSVibs/lib
- C言語実行基盤インタフェース生成ツール、およびバッチアプリケーションのソースファイルは、同一ディレクトリに格納(ヘッダファイルも同一ディレクトリに格納されているため、インクルードファイルパス指定は"."になる)

プロセスモードの場合
% cc -c -I/opt/FJSVibs/include -I. -xcode=pic32 -o batchapl.o batchapl.c
% cc -c -I/opt/FJSVibs/include -I. -xcode=pic32 -o IDL_apfwskel.o IDL_apfwskel.c
% cc -c -I/opt/FJSVibs/include -I. -xcode=pic32 -o IDL_apfwcdr.o IDL_apfwcdr.c
% cc -G -xcode=pic32 -L/opt/FJSVibs/lib -lapfwcdr_nt -o libbatchapl.so batchapl.o IDL_apfwskel.o IDL_apfwcdr.o |
スレッドモードの場合
% cc -c -I/opt/FJSVibs/include -I. -xcode=pic32 -D_REENTRANT -o batchapl.o batchapl.c
% cc -c -I/opt/FJSVibs/include -I. -xcode=pic32 -D_REENTRANT -o IDL_apfwskel.o IDL_apfwskel.c
% cc -c -I/opt/FJSVibs/include -I. -xcode=pic32 -D_REENTRANT -o IDL_apfwcdr.o IDL_apfwcdr.c
% cc -G -D_REENTRANT -xcode=pic32 -lpthread -L/opt/FJSVibs/lib -lapfwcdr -o libbatchapl.so batchapl.o IDL_apfwskel.o IDL_apfwcdr.o |

プロセスモードの場合
% gcc -c -I/opt/FJSVibs/include -I. -fPIC -o batchapl.o batchapl.c
% gcc -c -I/opt/FJSVibs/include -I. -fPIC -o IDL_apfwskel.o IDL_apfwskel.c
% gcc -c -I/opt/FJSVibs/include -I. -fPIC -o IDL_apfwcdr.o IDL_apfwcdr.c
% gcc -shared -lnsl -fPIC -L/opt/FJSVibs/lib -lapfwcdr_nt -o libbatchapl.so batchapl.o IDL_apfwskel.o IDL_apfwcdr.o |
スレッドモードの場合
% gcc -c -I/opt/FJSVibs/include -I. -fPIC -D_REENTRANT -o batchapl.o batchapl.c
% gcc -c -I/opt/FJSVibs/include -I. -fPIC -D_REENTRANT -o IDL_apfwskel.o IDL_apfwskel.c
% gcc -c -I/opt/FJSVibs/include -I. -fPIC -D_REENTRANT -o IDL_apfwcdr.o IDL_apfwcdr.c
% gcc -shared -lpthread -lnsl -fPIC -D_REENTRANT -L/opt/FJSVibs/lib -lapfwcdr -o libbatchapl.so batchapl.o IDL_apfwskel.o IDL_apfwcdr.o |
Copyright 2009 FUJITSU LIMITED