2012-06-22 11 views
10

Estoy intentando construir e instalar el módulo Python de rpy2. Pero obtuve un error (ver abajo).instale rpy2 en Windows7 64bit para Python 2.7

tengo R instalado en C:\Program Files\R\R-2.15.0\ y R.h está en C:\Program Files\R\R-2.15.0\include. ¿Cómo puedo decirle a setup.py que encuentre el encabezado R en ese directorio?

Tanto Python como R se instalaron utilizando un archivo binario oficial para Windows 64bit.

¿Alguien puede contribuir con una compilación binaria rpy2 para Windows 64bit y Python2.7 64bit? Christoph Gohlke dijo que por razones legales o técnicas, rpy2 no está incluido en su Unofficial Windows Binaries for Python Extension Packages. ¿Alguien más tiene un éxito exitoso?

Gracias!

Dado el siguiente proceso:

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

returned an empty string. (5 times) 

Con esta configuración para R como una biblioteca:

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:() 

edificio extensión 'rpy2.rinterface._rinterface', usando este comando:

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 

da este error:

.\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 

Respuesta

0

Estoy trabajando en lo mismo. Las bibliotecas, etc. ubicadas indican que está recogiendo la versión de 32 bits i386. Agregar el directorio de inclusión "C: \ Program Files \ R \ R-2.15.1 \ include" puede ayudar a forzar la solución del problema. Esto es lo más lejos que he llegado:

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

Con la cáscara MSVC expresa y R x64 y Msys sh en el camino.

1

Este enlace al archivo binario que funciona para mí, espero que a otros les resulta útil: link to the binary

+1

que es para 32bits python + R aunque no? – nicolas

+0

solo un enlace no es una buena respuesta. necesita incluir el código real o una explicación – DrCord

3

Aquí hay un enlace a las rpy2 binarios de Windows, todas las versiones de Python y x86/x64:

http://www.lfd.uci.edu/~gohlke/pythonlibs/#rpy2

+0

Esto no incluye la versión de rpy2 2.9.0 – rsc05

+0

Obtuve un error acerca de diferentes ABI de alguna manera, aunque seleccioné la descarga para C Python correcta :( – mlt

-1

Esto se debe a que su biblioteca de inclusión R no está en su variable de entorno CPPFLAGS. Debe encontrar el archivo R.h en su "C: \ Archivos de programa \ R \ R-2.15.0 \ include". En Linux, se puede añadir a su .bashrc

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

pero no estoy familiarizado con Python y R en las ventanas. Eso es todo lo que puedo ayudar.

2

Mi experiencia (2.7.9 (valor predeterminado, 10 de diciembre de 2014, 12:28:03) [MSC v.1500 64 bits (AMD64)]): - todos los instaladores binarios - al parecer rpy2 tiene dependencias no especificados - tienen numpy y SciPy instalado (binarios win_amd64) con sus dependencias no especificados

  1. instalar R, instalar los paquetes necesarios
  2. instalar pywin32
  3. "PIP instalar singledispatch"
  4. "PIP instalar rpy2-2.5.6-CP27-ninguno-win_amd64.whl"
  5. entorno de actualización, por ejemplo, os.environ ['R_HOME'] = r'C: \ Archivos de programa \ R \ R-3.1.3 ' os.environ [' R_USER '] = r'C: \ Python27 \ Lib \ site-packages \ rpy2 '
1

Probé todo esto en mi Windows 10 y no llegué a ninguna parte. Cuando hice el pip, decía que estaba instalado en la versión de Anaconda que he estado usando durante meses, pero cuando probé un import rpy, me acaba de dar un error.

iba a renunciar, pero luego se durmieron en él una noche y luego hice lo siguiente desde la línea de comandos:

  • eliminados todos mis casos Python viejos incluyendo Anaconda
  • Rebooted
  • Se reinstaló Anaconda (2.4.1 con Python versión 2.7.11)
  • Se aseguró de que python se ejecutara desde la línea de comandos desde cualquier directorio
  • comencé mi shell bash "mingw32" (el que viene con git)
  • Establecer variable de entorno personal R_HOME a C:\Program Files\R\R-3.2.3
  • descargado rpy2-2.7.5-cp27-none-win_amd64.whl de http://www.lfd.uci.edu/~gohlke/pythonlibs/#rpy2 como se sugirió anteriormente.
  • Un cambio en el directorio de trabajo al usuario Downloads directorio
  • lo instaló con el pitón pip install rpy2-2.7.5-cp27-none-win_amd64.whl
  • Iniciado y con éxito importado y AP2 rn

Aquí está una captura de pantalla de los pasos finales:

[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 
>>> 

Esperando que esto ayude a alguien en el futuro ...