我在我的基本操作系统 Freya 64 位(基于 Ubuntu 14.04)上运行
Python v2.7.8
和 R v3.0.2 (2013-09-25) -- "Frisbee Sailing"
。
我正在尝试安装
rpy2
软件包:
pip install rpy2
它失败并出现错误:
rpy2 构建轮子失败
在下面我还看到:
错误:命令“gcc”失败,退出状态为 1
完整输出位于此处。
我已经尝试过:
sudo apt-get install python-dev libevent-dev python3-dev
但错误仍然存在。
我知道
pip
可以工作,因为我已经安装了 numpy
、matplotlib
、scipy
和其他使用它的软件包。
在这篇文章中找到了答案。我只需要将 R 从
v3.0.2
升级到适用于我的系统的最新版本 (v3.2.1
)。
sudo apt-get remove r-base-core
编辑sources.list文件
sudo gedit /etc/apt/sources.list
添加以下条目(适用于 Ubuntu 14.04):
deb http://cran.rstudio.com/bin/linux/ubuntu trusty/
gpg --keyserver keyserver.ubuntu.com --recv-key E084DAB9
gpg -a --export E084DAB9 | sudo apt-key add -
sudo apt-get update
sudo apt-get upgrade
sudo apt-get install r-base
pip install rpy2
它在完整输出中有所指示。
这与 R 的编译和/或安装方式有关。 Rpy2 需要一个无法找到的标头:
./rpy/rinterface/r_utils.c:32:31: fatal error: R_ext/Rallocators.h: No existe el archivo o el directorio
#include <R_ext/Rallocators.h>
这个解决方案对我有用,因为它实际上是一个标题问题:https://stackoverflow.com/a/23085474/7049567
sudo apt-get install libreadline-dev
或者
yum install readline-devel
apt-get install -y python3-rpy2
对于想知道的人,在 Fedora 中,您需要安装此软件包:
sudo dnf install python3-devel
如果您有标题问题,这将解决问题! Pip 正在尝试编译
rpy2
,因此它需要一个头文件。
头文件就在这个包里!
首先升级pip版本
pip install --upgrade pip
然后安装系统依赖项(Ubuntu)
sudo apt-get install -y libssl-dev libffi-dev libxml2-dev libxslt1-dev libopenblas-dev
然后再次尝试安装
pip install rpy2