configure-zos Script 會設定一些通用值,並執行一些基本檢查來識別可用於系統的標頭和函數。
由於 z/OS 系統配置的差異,雖然 ./configure-zos Script 可能執行無誤,但在您執行 ./build-zos Script 時,可能會看到下列錯誤。
-1: EDC5083I An error occurred attempting to load a module into storage.
這項錯誤指出編譯器無法載入所需的動態程式庫。
重新執行 ./build-zos 指令。如果指令再度失敗,請洽詢系統管理者以取得協助來找出所需的程式庫。
FSUM3052 無法解析資料定義名稱 C8961。找不到資料集。請確定已正確指定資料集名稱 CEE.SCEEOBJ。
這項錯誤指出鏈結器找不到完成編譯所需的系統檔案庫。請執行指令:
% export _C89_LSYSLIB=SYS1.SCEELKED:SYS1.SCEELKEX
% export _C89_PSYSLIB=SYS1.SCEEOBJ
重新執行 ./build-zos 指令。如果指令再度失敗,請洽詢系統管理者以取得協助來找出所需的程式庫。
無法解析的符號錯誤指出,建置所預期的符號(由系統 C 程式庫定義)實際上並不存在。在大部分情況下,這是其他系統也常會遺漏的符號,而在 config.h 中有一個設定會解決這個問題。
比方說,您的系統可能未定義 unsetenv 函數。configure-zos Script 通常應該會偵測到這個狀況;如果未偵測,請編輯代理程式原始檔套件所提供的 config.h 檔,如下所示:
請將 #define HAVE_UNSETENV 1 變更為 #undef HAVE_UNSETENV。
重新執行 ./build-zos 指令來更正問題。