所以这就是问题所在:
最近有人买了一台用于服务器的新PC来取代1985年以前的旧约(我不知道从那时起每天如何工作)。
他想把旧的COBOL软件放在那里,他不愿意以任何方式将它重写为更好的东西..
那么有没有1985 cobol的编译器?对于如今的红帽linux?谷歌搜索它发现opencobol和其他几个,但都将代码转换为c ...似乎也太擅长了我...
根据要求更新
AIX是旧系统
答案 0 :(得分:3)
将COBOL转换为C然后编译有什么问题?只要它有效。早期的C ++环境以相同的方式实现:它们将C ++转换为C,然后调用C编译器。
将COBOL转换为C允许它们使用在C中实现COBOL等价物的高级抽象。它们可以利用标准C库,并将COBOL数据访问代码转换为对MySQL等广泛可用的数据库的调用。最后,转换为C然后编译可以充分利用代码生成中的大量开发工作。如果他们尝试直接编译到目标代码,他们必须生成GNU编译器子系统所期望的中间代码,否则他们必须直接转到目标代码。其中任何一个都比转换为C要复杂得多,这意味着COBOL编译器中出现错误的可能性要高得多。
从我坐的地方,我会说OpenCOBOL值得研究。请注意,他们说他们实施了“COBOL 85和COBOL 2002标准的重要部分”。您可能希望确保它们实现您需要的部件。
我还建议您查看TinyCOBOL。
答案 1 :(得分:1)
您没有提及上次更新应用程序或AIX的时间。如果在过去几年中更新了这些内容,您可以移植应用程序,而无需重新编译。您应该检查一下最初使用的是什么COBOL编译器,例如IBM,RM / COBOL,AcuCOBOL等。有可能购买一个仅运行时的版本(将执行,但不能编译),这将比购买更便宜编译器。
答案 2 :(得分:0)
一家名为Micro Focus的公司为Windows制作了一个cobol编译器,但我可以向你保证它并不便宜!
答案 3 :(得分:0)
执行此操作的标准方法称为迁移,涉及许多步骤,包括将源文件转换为文本文件格式或与目标计算机兼容的文件类型,使用批准的转换为文件的方法并使用兼容的记录写入magtape相位编码的方法或可能在ASN.xx模式下的磁盘或其他数据介质,传输到新计算机然后读入文件(通过ASN.yy)并以原生或导入文件格式存储,然后使用用于将其转换为源文件格式的实用程序,或者通过运行程序开发环境来访问本机文本文件或导入文件并将内容保存为本机源文件。对源代码或脚本代码执行手动检查和修改,然后编译程序并重复更改,直到达到工作版本。在新计算机上创建测试数据文件,并创建新的作业文件或宏以在开发环境中运行作业。完全测试后,程序可以使用数据文件和从旧系统迁移的实时宏或作业文件或新创建的程序,或多或少与引入源代码相同的方式运行。重要的一点是,必须将实时数据读入专用数据接收或加载程序,以便在需要结构化数据文件的情况下在任何新事务发生之前实现填充数据库。当从AIX或其他版本的Unix迁移到完全不同的操作系统时,如果文件格式转换器或导出器实用程序不处理行尾和换行以及记录结束的字符,则可能需要特定的转换。