无法分配内存和非零退出状态 - 无法在树莓派上安装R软件包

4

在尝试在我的Raspberry Pi上安装任何软件包时,我遇到了这个问题。

有关系统和软件的一些常规信息:

Raspberry Pi 3
Raspbian Jessie with Pixel(2016年11月,最新版本)
R 3.1.1

当我尝试install.packages("XML")时,它要求我选择一个镜像,然后在我选择并下载后,结果是:

The dowloaded source packages are in  
'/tmp/RtmpBOxeKj/downloaded_packages'

警告信息:
1:在system2(cmd0,args,env = env,stdout = outfile,stderr = outfile)中:系统调用失败:无法分配内存
2:在install.packages(“XML”)中:安装软件包“XML”具有非零退出状态

任何我尝试安装的软件包都会出现这种情况(有时只有第二个错误,有时两个都有)。

在启动Raspbian后,我有610MB的可用RAM,在打开R控制台后,我有582MB的可用RAM,然后在尝试安装软件包时下降到282MB。那不足以应付吗?

有什么想法吗?


1
安装R包需要比树莓派拥有的内存更多。为了使其正常工作,您需要临时创建交换空间(以免长期使用时磁盘被占满)。请参见http://raspberrypi.stackexchange.com/questions/70/how-to-set-up-swap-space。 - OganM
1
在查找了这个问题之后,我成功地找到了解决方案: https://dev59.com/EGsz5IYBdhLWcg3wn5basudo apt-get install libxml2-dev 安装完这个之后,我就能够安装XML包了。通过输入apt-cache search r-cran-*,它会显示许多其他的R包列表。我只是安装了所有的包,这样以后如果再次出现这个问题,我就不需要再次安装了,当然,你也可以只安装所需的包。 - Bruno Caram Muller
2
哦,亲爱的,这个问题有点棘手!请注意,在Stack Overflow上,我们更喜欢每个帖子只提一个问题,而不是历史记录你先前的问题,以便于当前和未来读者阅读。我建议您在下面(作为答案帖子)回答原始问题,然后提出一个新问题,并链接到这个问题,如果对新的情况有帮助的话,您可以从修订历史中复制新问题的部分。谢谢! - halfer
1个回答

1

在找到这个问题stackoverflow.com/questions/7765429/…之后,我成功地找到了解决方案。

sudo apt-get install libxml2-dev

在此之后,我成功安装了XML软件包。通过输入apt-cache search r-cran-*,会显示许多其他的R软件包列表。我仅仅是安装了所有软件包,以便将来如果再次遇到这个问题就不需要再次安装,但当然也可以只安装所需的软件包。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接