configure-zos スクリプトは、一部の共通の値を設定し、システムで使用可能なヘッダーと関数を特定するためのいくつかの 基本的なチェックを実行します。
z/OS システム構成にはさまざまな種類があるため、./configure-zos スクリプトはエラーなしで実行されても、./build-zos スクリプトを実行すると以下のエラーが表示される場合があります。
-1: EDC5083I モジュールをストレージにロードしようとしてエラーが発生しました。(An error occurred attempting to load a module into storage.)
このエラーは、必要な動的ライブラリーがコンパイラーによってロードできないことを示します。
./build-zos コマンドを 再実行します。コマンドが再度失敗する場合、システム管理者に連絡して、必要なライブラリーを見つけるための支援を要請してください。
FSUM3052 データ定義名 C8961 を解決できません。(The data definition name C8961 cannot be resolved.) データ・セットが見つかりませんでした。(The data set was not found.) データ・セット名 CEE.SCEEOBJ が正しく指定されていることを確認してください。(Ensure that data set name CEE.SCEEOBJ is specified correctly.)
このエラーは、コンパイルを完了するために必要なシステム・ライブラリーをリンカーが検出できないことを示します。次のコマンドを実行します。
% export _C89_LSYSLIB=SYS1.SCEELKED:SYS1.SCEELKEX
% export _C89_PSYSLIB=SYS1.SCEEOBJ
./build-zos コマンドを 再実行します。コマンドが再度失敗する場合、システム管理者に連絡して、必要なライブラリーを見つけるための支援を要請してください。
解決されないシンボルのエラーは、ビルド時にシステムの C ライブラリーによってシンボルが定義されることが予期されていましたが、実際にはこのライブラリーが存在しない場合に発生します。ほとんどの場合、これは他のシステムからも欠落していることが多いシンボルで、 問題を回避するための設定が config.h に存在します。
例えば、ご使用のシステムで unsetenv 関数を定義しない ことがあります。通常は、configure-zos スクリプトはこのことを検出するはずですが、検出しない場合は、エージェント・ソース・パックに用意されている config.h ファイルを以下のように編集します。
#define HAVE_UNSETENV 1 を #undef HAVE_UNSETENV に変更します。
./build-zos コマンドを 再実行して、問題を修正します。