No se puede actualizar Scipy

Estoy tratando de actualizar Scipy desde 0.9.0 a 0.12.0 . Yo uso el comando:

 sudo pip install --upgrade scipy 

y recibo todo tipo de errores que se pueden ver en el archivo pip.log aquí y, lamentablemente, no soy lo suficientemente inteligente como para entender qué está mal. Cualquier ayuda será apreciada.

Todos los mensajes de error indican lo mismo: no tiene BLAS (subrutinas de álgebra lineal básica) en su sistema o Scipy no puede encontrarlo. Al instalar paquetes desde el código fuente en ubuntu, como lo intentas hacer con pip, una de las maneras más fáciles de asegurarte de que las dependencias están en su lugar es mediante el comando

 $ sudo apt-get build-dep python-scipy 

que instalará todos los paquetes necesarios para construir el paquete python-scipy . En algunos casos, puede encontrarse con el problema de que la versión del paquete fuente que está intentando instalar tiene dependencias diferentes a la versión incluida con ubuntu, pero en su caso, creo que es probable que el comando anterior sea suficiente para obtener BLAS para ti, encabezados incluidos.

Tuve el mismo problema al actualizar desde scipy 0.9 a 0.13.3, y lo resolví usando la siguiente respuesta e instalación:

sudo apt-get install libblas-dev

sudo apt-get install liblapack-dev

sudo apt-get install gfortran

Asegúrate de que libatlas-base-dev y libatlas-sse2-dev estén instalados, parece que no puede encontrar tu biblioteca de atlas. También, vea esta pregunta:

¿Python SciPy necesita BLAS?

Me parecieron muy útiles las instrucciones de Adam Klein para configurar scipy (y amigos) en un entorno virtual.

Un problema con el que me encontré (que probablemente fue mi culpa): después de todo lo dicho y hecho, descubrí que la importación de scipy seguía cargando la versión 0.9.0, no 0.12.0. El problema era que mi sys.path estaba encontrando la versión anterior del sistema antes de la nueva versión. La solución era hacer

 /path/to/.virtualenvs/arthur/local/lib/python2.7/site-packages 

aparecer antes

 /usr/lib/python2.7/dist-packages 

en sys.path . Si tiene instalado virtualenvwrapper , puede agregar la ruta usando

 add2virtualenv /path/to/.virtualenvs/arthur/lib/python2.7/site-packages