Perl 脚本错误:字节加载器版本不匹配

Perl 脚本错误:字节加载器版本不匹配

我有用于 TSM 报告的 perl 脚本,该脚本在 AIX 版本 5 中运行良好。将 AIX 升级到版本 6 后,该脚本无法运行。我收到此错误:

byteloader version mismatch expected 0.5 , got 0.6 .

我猜想升级操作系统后,perl 也从 perl 5.8.2(工作)升级到了 5.8.8(不工作)。

我必须做什么才能使该脚本在 AIX 6 上运行?

答案1

你的 perl 脚本显然使用字节码字节码有点像编译代码。它是预解析的代码,比普通脚本代码加载效率更高(解释得很糟糕,维基百科可能效果更好)。
然而在 perl 中,运行字节码仅限于构建字节码的模块版本。这意味着您使用 ByteLoader 0.5 来构建字节码,但运行字节码的机器的版本是 0.6。

解决方案要么是使用较新版本的 ByteLoader 模块重建脚本(其文档包含执行此操作的说明),要么是运行正常的非字节码脚本。但是,这两种方法都要求您仍然拥有正常的非字节码版本。

相关内容