首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >GNUCobol (OpenCOBOL)错误: libcob:找不到模块'»‘

GNUCobol (OpenCOBOL)错误: libcob:找不到模块'»‘
EN

Stack Overflow用户
提问于 2017-10-24 08:34:16
回答 1查看 1.3K关注 0票数 2

我正在转换一组为Microfocus编译器编写的COBOL语言程序,以便与GnuCobol一起使用。到目前为止,我已经取得了一定的成功,只需要修改一些特定于微焦点的日期命令,并使用GnuCobol的-std=mf参数。

我使用的是来自www.arnoldtrembley.com/GnuCOBOL.htm的预构建版本

在成功编译后运行某个文件时,我遇到了这个错误:

代码语言:javascript
复制
libcob: module '»' not found

在OpenCOBOLIDE中尝试之后,我发现令人不快的代码行是

代码语言:javascript
复制
 CALL X"AF" USING SET-BIT-PAIRS
                               USER-KEY-CONTROL

我能做些什么来解决这个问题呢?

EN

回答 1

Stack Overflow用户

发布于 2017-10-24 13:00:53

你需要对这部分进行重新编码。GnuCOBOL仅支持少数编号系统支持例程。x"91",x"E4",x"E5",x"F4“和x"F5”。x"AF“还不在内置系统库例程的列表中。即使是支持的也不包括对所有子功能的处理。

由于x"AF“与屏幕相关(至少在我看到的一个文档页面上是这样),您可能只需要找出要发送到终端的转义代码,然后使用DISPLAY而不是CALL手动完成这一部分。

如果不知道正在调用什么x"AF“子函数(无论设置位对中是什么),就不可能想出一个特定的VT100序列来建议尝试。如果它仅仅是子功能18,那么显示单个字符而不前进可能就足够了。子功能22仅仅意味着按响终端钟,这可以通过发射Ctrl-G来完成。等。

如果您很好奇,可以运行cobc --list-system (或者查看GnuCOBOL手册,该手册包含在您使用的预构建包中),以了解GnuCOBOL支持哪些常用的系统库调用。

如果您喜欢冒险,您可以自由地查看编译器源代码树,只需通过将调用号链接到C函数、使用新条目扩展libcob/system.def并从源代码重新构建GnuCOBOL来更改libcob以支持您拥有的代码。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/46900457

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档