6

我收到Out of memory!所有安装的消息。我以前从未使用过 cpan,我不确定它是如何工作的。我ulimit在 /.cpan 目录上做了一个,结果是无限的。这是我正在查看的内容:

[/usr/bin]# perl -MCPAN -e shell
终端不支持 AddHistory。

cpan shell -- CPAN 探索和模块安装 (v1.7602)
提供 ReadLine 支持(尝试“安装 Bundle::CPAN”)

cpan> 安装 Term::Readline
CPAN:可存储加载正常
去阅读/.cpan/Metadata
去阅读/.cpan/sources/authors/01mailrc.txt.gz
去阅读/.cpan/sources/modules/02packages.details.txt.gz
  数据库于 2012 年 6 月 19 日星期二 11:51:03 GMT 生成
CPAN: HTTP::Date 加载正常

  有一个新的 CPAN.pm 版本 (v1.9800) 可用!
  [当前版本为 v1.7602 ]
  你可能想试试
    安装包::CPAN
    重新加载cpan
  不退出当前会话。应该是无缝升级
  在我们跑步的时候...

记不清!
终端不支持 GetHistory。
已删除锁定文件。
4

6 回答 6

15

这与增加内存无关,但可能是您的解决方案。

你可以尝试用 usecpanm代替 cpan,所以:

这将为cpanm您安装

$ curl -L http://cpanmin.us | perl - --self-upgrade

在您可以安装模块之后,例如:

$ cpanm 任务::Plack

cpanm需要更少的内存。

于 2012-06-19T22:37:45.017 回答
6

另一个原因是您用来运行的用户cpan对其可以使用的内存量有限制。发出以下命令以使用所有可用内存:

ulimit -m unlimited
ulimit -d unlimited
于 2013-01-17T17:32:59.470 回答
0

在 AIX 服务包和维护级别更新后,我们遇到了同样的错误(内存不足!)。将 perl 重新安装到最新版本(从源代码编译)后,错误消失了。我们注意到 AIX SP+ML 更新覆盖了指向 /usr/bin 中我们自安装工具的链接(make 和 iconv)。我们假设 AIX SP+ML 更新对自安装的 perl 做了类似的事情。

于 2014-05-27T15:20:31.473 回答
0

在 AIX(如已标记)上,罪魁祸首可能是未设置或 LDR_CNTRL 环境变量太小。

于 2013-07-11T23:50:13.720 回答
0

我发现 CPAN Out of Memory 错误的一种解决方案是安装交换,假设你没有。这里有一个很好的分步教程,介绍如何在 Ubuntu 14.04(具有更广泛的 Linux 适用性)上做到这一点

于 2015-07-22T12:14:40.300 回答
0

如果问题是在使用 CPAN 时内存不足(我有一个服务器我执行 perl dev,我专门在其上安装了 512 兆字节的 RAM),如上所述,cpanm 是你的救星。这个特定的服务器会破坏 perl 内容文件,所以我不能使用 cpan 来更新自己。然而 cpanm 在我第一次使用它时就修复了所有问题,并且由于它易于使用和稳定性,是我维护我的 perl 服务器的唯一方法。

罗恩

于 2017-02-27T06:22:16.437 回答