第5章 アプリケーションのコンパイル・リンク
5.2 Windows(R) を使用した場合のアプリケーションのコンパイル・リンク
5.2.2 コンパイル・リンクのための環境設定
アプリケーションをコンパイル・リンクするためには、作業に先立って必要な環境を設定しておく必要があります。設定す べき環境には、以下のものがあります。
・
環境変数の設定・
作業用のディレクトリ構成環境変数の設定
アプリケーションをコンパイルするときに必要に応じて設定する環境変数を以下に示します。これらの環境変数を設定し ておくことにより、コンパイル時にsqlccまたはsqlcobolでオプションを指定する必要がなくなります。
表5.8 アプリケーションをコンパイル・リンクする場合に必要に応じて設定する環境変数
環境変数名 意味
RDBDB
アプリケーションで指定するデータベース名を指定します。
環境変数“RDBDB”の設定の例を以下に示します。
set RDBDB=DB1
SQLPC (Cプログラ ム時)
コンパイル時の起動オプションを指定します。起動オプションに は、以下のものがあります。
・
-I:インクルードファイルのディレクトリ・
-d:データベース名・
-R:SQL文の予約語をSQL88でコンパイルする場合に指定・
-W:SQL文の予約語の種別を指定-
-W95:プロシジャルーチン(条件宣言、ハンドラ宣言、SIGNAL文およびRESIGNAL文は除く)を利用する場合に
指定
環境変数名 意味
-
-W96:プロシジャルーチン(条件宣言、ハンドラ宣言、SIGNAL文およびRESIGNAL文は除く)、トリガ、行識別子 または並列指定を利用する場合に指定
-
-W2000:プロシジャルーチン、トリガ、行識別子、並列指定、ロールまたはファンクションルーチンを利用する場合 に指定
・
-C:固定長文字列型のホスト変数に対してアプリケーションの 実行時に、NULL文字(¥0)を意識した処理をする場合に指定・
-v9:64ビットで実行するSQL埋込みCプログラムをコンパイル する場合に指定・
-T:マルチスレッド環境で動作するまたはセションを操作する 関数を利用するSQL埋込みCプログラムをコンパイルする場合 に指定環境変数“SQLPC”の設定の例を以下に示します。
set SQLPC=-I C:¥USERS¥DEFAULT¥INCLUDE
SQLPCOB (COBOLプ ログラム時)
コンパイル時の起動オプションを指定します。起動オプションに は、以下のものがあります。
・
-I:インクルードファイルのディレクトリ・
-d:データベース名・
-R:SQL文の予約語をSQL88でコンパイルする場合に指定・
-W:SQL文の予約語の種別を指定-
-W95:プロシジャルーチン(条件宣言、ハンドラ宣言、SIGNAL文およびRESIGNAL文は除く)を利用する場合に
指定
-
-W96:プロシジャルーチン(条件宣言、ハンドラ宣言、SIGNAL文およびRESIGNAL文は除く)、トリガ、行識別子
または並列指定を利用する場合に指定
-
-W2000:プロシジャルーチン、トリガ、行識別子、並列指定、ロールまたはファンクションルーチンを利用する場合 に指定
・
-Z:COBOLソース単位がクラス定義(オブジェクト指向プログラミング機能)の場合に指定
・
-A:SQL埋込みCOBOLプログラム中に単一の引用符を記述する場合に指定
・
-f:SQL埋込みCOBOLプログラムが固定形式の場合に指定・
-n:SQL埋込みCOBOLプログラム中の英小文字を英大文字として扱わない場合に指定
・
-G:SQL埋込みCOBOLプログラム中に集団項目を使用する場合に指定
・
-E1:SQL埋込みCOBOLプログラム中に集団項目繰り返しを使用する場合に指定
・
-g:エラーメッセージにSQL埋込みプログラムの行番号を出力する場合に指定
・
-un:アプリケーションの文字コード系としてUNICODEを使用する場合に指定
環境変数名 意味
・
-T:マルチスレッド環境で動作するSQL埋込みCOBOLプログ ラムをコンパイルする場合に指定・
-v9:64ビットで実行するSQL埋込みCOBOLプログラムをコン パイルする場合に指定環境変数“SQLPCOB”の設定の例を以下に示します。
set SQLPCOB=-I C:¥USERS¥DEFAULT¥INCLUDE
INCLUDE
インクルードファイルのディレクトリを指定します。
環境変数“INCLUDE”は、アプリケーション中にINCLUDE文を記 述した場合に、Cプログラムの場合は環境変数“SQLPC”と、
COBOLプログラムの場合は、環境変数“SQLPCOB”と併用して設 定できます。
環境変数の指定がない場合は、Cプログラム時は環境変
数“SQLPC”およびコンパイル時だけ有効となり、COBOLプログラ
ム時は環境変数“SQLPCOB”およびコンパイル時だけ有効となり ます。
環境変数“INCLUDE”の設定の例を以下に示します。
set INCLUDE=C:¥USERS¥DEFAULT¥INCLUDE;C:¥USERS
¥DEFAULT¥INCLUDE2
ただし、環境変数RDBDBを指定した場合、またはSQLPCおよびSQLPCOBのコンパイル時の起動オプションに-dを指定 した場合、そのアプリケーションからCONNECT文を実行することはできません。
アプリケーションをCOBOLで作成する場合
COBOLプログラムのコンパイルのための環境変数の定義が必要となります。
参照
COBOLプログラムのコンパイルのために必要な環境変数の定義については、“NetCOBOL使用手引書”また
は“COBOL97使用手引書”を参照してください。
アプリケーションをC言語で作成する場合
アプリケーションの対象プラットフォーム用のVisual C++ツールセットが動作するように環境を設定してください。
Microsoft(R) Visual Studio 2005での作成手順の例を以下に示します。
1.
[スタート]メニューから、[プログラム(P)]で[Microsoft Visual Studio 2005]の[Visual Studio Tools]を選択しま す。2.
表示されたメニューから、対象プラットフォームに対応した項目を選択します。-
Visual Studio 2005 コマンド プロンプト-
Visual Studio 2005 Itanium Cross Tools コマンドプロンプト-
Visual Studio 2005 x64 Cross Tools コマンド プロンプト 例Windows Server(R) 2003 for ItaniumまたはWindows Server(R) 2008 for Itaniumの場合
[Visual Studio 2005 Itanium Cross Tools コマンドプロンプト]を選択します。Itanium向けのコンパイラやリン カを使うための環境が整ったコマンドプロンプトが開きます。
参照
Visual C++ツールセットの設定方法については、“Microsoft(R)Visual C++のドキュメント”を参照してください。
注意
Windows(R)において、Symfoware/RDBまたはEsqlのインストールにより、アプリケーションのコンパイル・リンクに必要 な環境変数“INCLUDE”および“LIB”が、自動的にシステム環境変数に設定されます。
ユーザ環境変数に“INCLUDE”および“LIB”を設定する場合、それぞれのユーザ環境変数の最後に“;%INCLUDE
%”および“;%LIB%”を設定しシステム環境変数が継承されるようにしてください。
例
ユーザ環境変数“INCLUDE”の場合:~;%INCLUDE%
ユーザ環境変数“LIB”の場合 : ~;%LIB%
作業用のディレクトリ構成
アプリケーションのコンパイル・リンクで参照あるいは作成するファイルを格納するための、作業用のディレクトリ構成を決 めます。ディレクトリ構成は、開発および保守のしやすさを考慮して作成してください。
本章でアプリケーションのコンパイル・リンクの例を示す場合、作業用のディレクトリは以下の構成で作成されているもの とします。