5通常、DB2_SQLROUTINE_COMPILE_COMMAND を設定する必要はありません。ただし、 5これが Windows で設定されている場合、 5変数 %DB2PATH% の値であるデフォルト・パス C:¥Program Files¥IBM¥SQLLIB の Program と Files の間にスペースがあることが原因で、 5問題が発生する可能性があります。 5コマンド値全体が引用符で囲まれている場合でもこの問題が発生する可能性があります。
5その対処法として、%DB2PATH% 値に短形を使用します。 5デフォルトの場合、C:¥PROGRA~1¥IBM¥SQLLIB となります。 5一方の方法では、DB2 UDB のインストール先のパスの短形に %DB2PATH% を設定することができます。
5 set db2path=C:¥PROGRA~1¥IBM¥SQLLIB
5次に、デフォルト値を使用して DB2_SQLROUTINE_COMPILE_COMMAND を実行できます。
5 db2set DB2_SQLROUTINE_COMPILE_COMMAND="cl -Ox -W2 -TC -D_X86_=1 -MD 5 -I%DB2PATH%¥include SQLROUTINE_FILENAME.c /link -dll 5 -def:SQLROUTINE_FILENAME.def /out:SQLROUTINE_FILENAME.dll 5 %DB2PATH%¥lib¥db2api.lib"
5もう一方の方法として、%DB2PATH% のパス値の短形を置き換えることで、コマンド自身の値を変更できます。
5 db2set DB2_SQLROUTINE_COMPILE_COMMAND="cl -Ox -W2 -TC -D_X86_=1 -MD 5 -IC:¥PROGRA~1¥IBM¥SQLLIB¥include SQLROUTINE_FILENAME.c /link -dll 5 -def:SQLROUTINE_FILENAME.def /out:SQLROUTINE_FILENAME.dll 5 C:¥PROGRA~1¥IBM¥SQLLIB¥lib¥db2api.lib"
5実際に使用するパスは、DB2 UDB のインストール先のものでなければなりません。 5例えば、DB2 UDB が D: ドライブの同一パスにインストールされている場合は、 5D:¥PROGRA~1¥IBM¥SQLLIB という設定になります。