Instalando SciPy y NumPy usando pip

Estoy tratando de crear las bibliotecas requeridas en un paquete que estoy distribuyendo. Requiere tanto las bibliotecas SciPy como NumPy . Durante el desarrollo, instalé tanto usando

apt-get install scipy 

que instaló SciPy 0.9.0 y NumPy 1.5.1, y funcionó bien.

Me gustaría hacer lo mismo usando pip install – para poder especificar dependencias en un setup.py de mi propio paquete.

El problema es, cuando bash:

 pip install 'numpy==1.5.1' 

funciona bien.

Pero entonces

 pip install 'scipy==0.9.0' 

falla miserablemente, con

 raise self.notfounderror(self.notfounderror.__doc__) numpy.distutils.system_info.BlasNotFoundError: Blas (http://www.netlib.org/blas/) libraries not found. Directories to search for the libraries can be specified in the numpy/distutils/site.cfg file (section [blas]) or by setting the BLAS environment variable. 

¿Cómo consigo que funcione?

Estoy asumiendo la experiencia de Linux en mi respuesta; Descubrí que hay tres requisitos previos para que pip install scipy .

Vaya aquí: Instalando SciPY

Siga las instrucciones para descargar, comstackr y exportar la variable env para BLAS y luego LAPACK . Tenga cuidado de no solo cortar y pegar ciegamente los comandos de shell, habrá algunas líneas que deberá seleccionar según su architecture, etc., y deberá corregir / agregar los directorios correctos que se supone incorrectamente como bien.

La tercera cosa que puede necesitar es instalar yum numpy-f2py o su equivalente.

Oh, sí, y por último, es posible que necesites instalar yum gcc-gfortran ya que las bibliotecas de arriba son la fuente de Fortran .

Esto me funcionó en Ubuntu 14.04:

 sudo apt-get install libblas-dev liblapack-dev libatlas-base-dev gfortran pip install scipy 

necesita los paquetes libblas y liblapack dev si está usando Ubuntu.

 aptitude install libblas-dev liblapack-dev pip install scipy 

Ya que las instrucciones anteriores para instalar con yum están rotas aquí están las instrucciones actualizadas para instalar en algo como fedora. He probado esto en “Amazon Linux AMI 2016.03”

 sudo yum install atlas-devel lapack-devel blas-devel libgfortran pip install scipy 

Estaba trabajando en un proyecto que dependía de entumecimiento y timidez. En una instalación limpia de Fedora 23, usando un entorno virtual de Python para Python 3.4 (también funcionó para Python 2.7), y con lo siguiente en mi setup.py (en el método setup() )

 setup_requires=[ 'numpy', ], install_requires=[ 'numpy', 'scipy', ], 

Encontré que tenía que ejecutar lo siguiente para pip install -e . trabajar:

 pip install --upgrade pip 

y

 sudo dnf install atlas-devel gcc-{c++,gfortran} subversion redhat-rpm-config 

La redhat-rpm-config es para el uso de scipy de redhat-hardened-cc1 hardened redhat-hardened-cc1 en lugar de la regular cc1

¿Qué sistema operativo es este? La respuesta podría depender del sistema operativo involucrado. Sin embargo, parece que necesitas encontrar esta biblioteca BLAS e instalarla. No parece estar en PIP (tendrá que hacerlo a mano), pero si lo instala, debería permitirle progresar en su instalación de SciPy.

En windows , usando python 3.5 , logré instalar scipy usando conda no pip :

 conda install scipy 

En mi caso, la mejora de pip hizo el truco. Además, he instalado Scipy con el parámetro -U (actualizar todos los paquetes a la última versión disponible)