2012-06-22 236 views
10

我正在尝试构建并安装rpy2 Python模块。但有一个错误(见下文)。在Windows7 64bit上安装rpy2 for Python 2.7

我有R安装在C:\Program Files\R\R-2.15.0\R.h是在C:\Program Files\R\R-2.15.0\include。我如何告诉setup.py在该目录中找到R标头?

Python和R都是使用Windows 64位的官方二进制文件安装的。

有人可以贡献一个rpy2二进制版本的Windows 64位和Python2.7 64位? Christoph Gohlke出于法律或技术原因说,rpy2不包括在他的Unofficial Windows Binaries for Python Extension Packages中。其他人有成功的打击?

谢谢!

鉴于以下过程:

$ python setup.py build 
running build 
running build_py 
running build_ext 

returned an empty string. (5 times) 

利用这种配置对于R为库:

include_dirs:() 
libraries:() 
library_dirs: ('C:/PROGRA~1/R/R-215~1.0/bin/i386',) 
extra_link_args:() 
# OSX-specific (included in extra_link_args) 
    framework_dirs:() 
    frameworks:() 

建筑物rpy2.rinterface._rinterface'延伸,使用该命令:

C:\Program Files (x86)\Microsoft Visual Studio 9.0\VC\BIN\amd64\cl.exe /c 
/nologo /Ox /MD /W3 /GS- /DNDEBUG -DWin32=1 -DCSTACK_DEFNS=1 
-I.\rpy\rinterface -IC:\Python27\include -IC:\Python27\PC 
/Tc.\rpy\rinterface\_rinterface.c 
/Fobuild\temp.win-amd64-2.7\Release\.\rpy\rinterface\_rinterface.obj 
_rinterface.c 

给出此错误:

.\rpy\rinterface\_rinterface.c(61) : fatal error C1083: Cannot open include file: 
'R.h': No such file or directory 
error: command '"C:\Program Files (x86)\Microsoft Visual Studio 9.0\VC\BIN\amd64\cl.exe"' 
failed with exit status 2 

回答

0

我正在通过相同的工作。库等位于表明你正在拿起32位版本i386。添加“C:\ Program Files \ R \ R-2.15.1 \ include”include目录可能有助于强制解决问题。这是我得到的最远的:

building 'rpy2.rinterface._rinterface' extension 
error: Unable to find vcvarsall.bat 

使用MSVC express shell和R x64和msys sh路径。

1

此链接到二进制文件为我工作,我希望其他人觉得有用: link to the binary

+1

即32位python + R虽然没有? – nicolas

+0

只是一个链接不是一个好的答案。您需要包含实际的代码或解释 – DrCord

-1

这是因为您的R包含库不在您的CPPFLAGS环境变量中。 您应该在“C:\ Program Files \ R \ R-2.15.0 \ include”中找到R.h文件。 在Linux中,你可以添加到您的.bashrc

export "$CPPFLAGS=-I/path-to-R/include $CPPFLAGS" 

,但我不所熟悉的Python和R的窗户。 这就是我可以帮助的。

2

我的经验(2.7.9(默认,2014年12月10日,12:28:03)[MSC v。1500的64位(AMD64)]): - 所有二进制安装 - 显然rpy2具有未指定的依赖性 - 具有numpy的和SciPy的安装(win_amd64二进制文件)与他们的未指定的依赖关系

  1. 安装R,安装所需的软件包
  2. 安装pywin32
  3. “PIP安装singledispatch”
  4. “PIP安装rpy2-2.5.6-cp27-NONE-win_amd64.whl”
  5. 更新的环境中,如 os.environ [ 'R_HOME'] = R'C:\ Program Files文件\ r \ R-3.1.3' os.environ [ 'R_USER'] = R'C:\ Python27 \ LIB \站点包\ rpy2 “
1

我尝试了所有的这些在我的Windows 10和毫无进展。当我做了pip,它说,它被安装到,我已经用了几个月的蟒蛇版本,但是当我尝试过的import rpy,它只是给了一个错误。

正想放弃,但后来我在一个晚上睡觉,然后我做在命令行:

  • 删除了所有我的旧的Python实例包括蟒蛇
  • 重新引导
  • 重新安装Anaconda(2.4.1与Python版本2.7.11)
  • 确保python从任何目录的命令行运行
  • 启动我的“mingw32”bash shell(git
  • 我个人R_HOME环境变量设置为C:\Program Files\R\R-3.2.3
  • http://www.lfd.uci.edu/~gohlke/pythonlibs/#rpy2下载rpy2-2.7.5-cp27-none-win_amd64.whl如上建议。
  • 改变工作目录到我的用户Downloads目录
  • pip install rpy2-2.7.5-cp27-none-win_amd64.whl
  • 入门蟒蛇安装,并成功导入和RN PY2

这里的最后步骤的截屏:

[email protected] ~/Downloads 
$ pip install rpy2-2.7.5-cp27-none-win_amd64.whl 
Processing c:\users\mwise\downloads\rpy2-2.7.5-cp27-none-win_amd64.whl 
Requirement already satisfied (use --upgrade to upgrade): six in c:\users\mwise\appdata\local\continuum\anaconda2\lib\site-packages (from rpy2==2.7.5) 
Requirement already satisfied (use --upgrade to upgrade): singledispatch in c:\users\mwise\appdata\local\continuum\anaconda2\lib\site-packages (from rpy2==2.7.5 
) 
Installing collected packages: rpy2 
Successfully installed rpy2-2.7.5 

[email protected] ~/Downloads 
$ python 
Python 2.7.11 |Anaconda 2.4.1 (64-bit)| (default, Dec 7 2015, 14:10:42) [MSC v.1500 64 bit (AMD64)] on win32 
Type "help", "copyright", "credits" or "license" for more information. 
Anaconda is brought to you by Continuum Analytics. 
Please check out: http://continuum.io/thanks and https://anaconda.org 
>>> import rpy2 
>>> import rpy2.robjects as robjects 
>>> pi = robjects.r['pi'] 
>>> pi[0] 
3.141592653589793 
>>> 

希望这会帮助别人下了线......