zOS:模块包含版本 3 程序对象功能,无法以加载模块格式保存

zOS: MODULE INCORPORATES VERSION 3 PROGRAM OBJECT FEATURES AND CANNOT BE SAVED IN LOAD MODULE FORMAT

我正尝试在 cobol 中完成 linkage of a hello world,如 this tutorial 所示,我可以编译程序并在 project.group.OBJ 中成功获取新成员, 但是当我 link 它与

LINK project.group.OBJ(Member) lib('cee.sceelked')

我得到以下信息:

 IEW2278I B352 INVOCATION PARAMETERS - TERM                                    
 IEW2606S 4B39 MODULE INCORPORATES VERSION 3 PROGRAM OBJECT FEATURES AND CANNOT
          BE SAVED IN LOAD MODULE FORMAT.                                      
 IEW2008I 0F03 PROCESSING COMPLETED.  RETURN CODE =  12.

我意识到在 4(前景)选项中,link 编辑器在左侧出现一个星号:“7 *Binder/Link 编辑器”,表示“不支持打包数据”。

是因为那个错误吗? “不支持打包数据”是什么意思?我可以毫无问题地访问该选项。

搜索我发现 a link which indicates“正在尝试以与正在使用的功能不兼容的格式保存模块”但我不知道所使用的功能是什么意思。它与 linked 时应该放入的数据集加载类型有关​​吗?我迷路了。

加载模块格式很旧。 IBM 的最后一个生成可绑定为加载模块的代码的 COBOL 编译器是 IBM Enterprise COBOL 4。2.x,计划于 2022 年 4 月 30 日终止服务。如果您使用某些编译选项,即 DLL,即使该编译器也会生成无法存储为加载模块的代码。

较新版本的 IBM Enterprise COBOL 生成的代码必须绑定为程序对象。程序对象虽然像加载模块一样可执行,但与加载模块有很大不同。

加载模块存储在 PDS(分区数据集)中。程序对象必须存储在 PDSE(扩展的分区数据集)中。

确保绑定步骤(project.group.LOAD 数据集)的 SYSLMOD DD 指向 PDSE。当您使用 ISPF 3.2 分配它时,将数据集名称类型设置为 LIBRARY。