0

我已经进行了一些研究,似乎 ActivePerl 的产品早期版本存在问题,某些 CPAN 模块安装不正确。但是,我运行的是 5.14.x 版本,我没有遇到任何问题。

根据我看到的一些报价:

  1. ActivePerl 与 Perl 的参考发行版 100% 兼容。
  2. 使用 ActivePerl 测试的代码将在安装了适当扩展的任何 Perl 安装上运行。

我假设第一个语句是指您在安装 Perl 时获得的标准模块,而第二个语句我不确定他们在说什么?

无论如何,有什么方法可以查明 ActivePerl 与当前 CPAN 模块的兼容性如何,或者这是否是未知的?我只是不想花时间在它上面,只需要在下个月切换到类似 Strawberry Perl 的东西,以避免更常见的模块的 CPAN 模块构建失败。

如果 ActivePerl 与 80% 或更高的 CPAN 模块兼容,我会觉得使用它会更舒服,但我找不到任何有关这方面的信息。

4

3 回答 3

3

我怀疑通用统计数据是否有用。一般来说,我希望所有“纯 perl”模块都应该或多或少地开箱即用。但是请记住,某些 perl 模块确实是低级 linux/unix 样式共享库(Windows 术语中的 dll)的接口,其中可用性不太确定。根据我的经验(违背我的建议,编写了一些托管在 Windows 上的 perl 应用程序)大多数事情都可以工作,和/或相当容易解决,而且 ActiveState 和 Strawberryperl 似乎都对大多数常见模块提供了不错的支持。

于 2012-03-07T17:29:18.717 回答
3

第一条语句根本不涉及模块。它说 ActivePerl 不是基于Perl,它Perl。因此,任何将在 Perl 上运行的东西也将在 ActivePerl 上运行。

这也意味着CPAN 上的所有模块都与 ActivePerl 兼容,因为 ActivePerl 是 Perl。

一个模块是否与Windows兼容是一个完全不同的问题,只能逐个模块地回答。


第二个陈述指出,如果您有一个在原始 ActivePerl 上运行的脚本或模块,它可能不一定在原始 Perl 上运行,因为 ActiveState 在其分发中包含不是核心模块的模块(例如 LWP)。但是,要使脚本或模块在其他发行版上运行,您需要做的就是安装这些模块。

于 2012-03-08T03:47:05.810 回答
2

您可以在http://code.activestate.com/ppm/查看 PPM 模块的可用性。例如,一个不能通过 PPM 很好地工作的模块是PAR::Packer.

于 2012-03-08T04:36:56.833 回答