Python SciPy besoin BLAS?
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.
Qui goudron ai-je besoin de télécharger à partir de ce site?
J'ai essayé de fortrans, mais je reçois ce message d'erreur (après la définition de la variable d'environnement bien évidemment).
- La question est donc quelle est la bonne version pour votre système afin de télécharger à partir de certains sites, mais ni les détails du système, ni le site sont donnés dans la question? Il n'est pas surprenant qu'aucune réponse n'était à venir.
Vous devez vous connecter pour publier un commentaire.
La SciPy page web utilisé pour fournir de construction et d'installation instructions, mais les instructions qui s'y reposent maintenant sur les OS des distributions binaires. Pour construire SciPy (et NumPy) sur des systèmes d'exploitation sans paquets précompilés les bibliothèques requises, vous devez construire et ensuite lier statiquement à la Fortran bibliothèques BLAS et LAPACK:
Exécuter seul des cinq g-77/gfortran/ifort commandes. J'ai commenté tous, mais le gfortran que j'utilise. Le subséquente LAPACK installation nécessite un Fortran 90 compilateur, et depuis les deux installations doivent utiliser le même compilateur Fortran, g77 ne doit pas être utilisé pour BLAS.
Ensuite, vous aurez besoin pour installer le LAPACK choses. Le SciPy de la page instructions m'a aidé, mais j'ai dû le modifier pour l'adapter à mon environnement:
Mise à jour le 3-Sep-2015:
Vérifié certains commentaires aujourd'hui (merci à tous): Avant d'exécuter
make lapacklib
modifier lemake.inc
fichier et ajouter-fPIC
option pourOPTS
etNOOPT
paramètres. Si vous êtes sur une architecture 64 bits ou voulez compiler pour un, également ajouter-m64
. Il est important que les BLAS et LAPACK sont compilés avec ces options, les mêmes valeurs. Si vous oubliez le-fPIC
SciPy sera effectivement vous donner une erreur sur les symboles manquants et recommandons cet interrupteur. La section spécifique de lamake.inc
ressemble à ça dans ma configuration:Sur des machines anciennes (par exemple, RedHat 5), gfortran peut être installé dans une ancienne version (par exemple 4.1.2) et ne comprend pas l'option
-frecursive
. Tout simplement le supprimer de lamake.inc
fichier dans de tels cas.La lapack la cible de test du Makefile échoue dans ma configuration car il ne peut pas trouver les bibliothèques blas. Si vous êtes approfondie, vous pouvez déplacer temporairement la bibliothèque blas à l'emplacement spécifié pour tester les lapack. Je suis une personne paresseuse, donc je fais confiance aux devs d'avoir de travail et vérifier que dans SciPy.
make.inc
fichier en paramètreOPTS = -O2 -fPIC
etNOOPT = -O0 -fPIC
.export LAPACK=~/src/lapack-3.5.0/
au lieu d'ajouter lelibflapack.a
à la fin.sudo yum install -y "@Development Tools" gcc-gfortran blas-static lapack-static numpy-f2py numpy scipy && pip install --upgrade scipy
gfortran -O3 -std=legacy -m64 -fno-second-underscore -fPIC -o libblas.so.3 -shared -Wl,-soname=libblas.so.3 *.f
make
processus de sélectionner quelques-uns, les fichiers sont compilés avec des options différentes. Pour compiler ces fichiers correctement, modifiermake.inc
et changement deLOADER = gfortran -fPIC
.Si vous avez besoin d'utiliser les versions les plus récentes de SciPy plutôt que la version de paquet, sans passer par les tracas de la construction de BLAS et LAPACK, vous pouvez suivre la procédure ci-dessous.
Installer algèbre linéaire bibliothèques de dépôt (pour Ubuntu),
Puis installer SciPy, (après avoir téléchargé le SciPy source):
python setup.py install
ouSelon le cas.
libopenblas-dev
àlibblas-dev
(Ubuntu 10.04).fatal error: Python.h: No such file or directory
sudo apt-get install python-dev
il fixe. stackoverflow.com/a/21530768/125507sudo yum install blas-devel lapack-devel
a fonctionné pour moisudo yum install blas-devel lapack-devel
nécessaires sur RedHat ou CentOS.Sur Fedora, cela fonctionne:
N'oubliez pas d'installer 'lapack-devel " et " blas-devel' en plus de 'blas" et "lapack' sinon vous obtenez le message d'erreur que vous avez mentionnés ou le "numpy.distutils.system_info.LapackNotFoundError d'erreur".
blas-static
&lapack-static
ont été nécessaires pour me sur fedora 20.Je suppose que vous parlez de l'installation de Ubuntu. Utilisez simplement:
Qui devrait prendre soin de la BLAS bibliothèques de la compilation ainsi. Sinon, la compilation des bibliothèques BLAS est très difficile.
pip install scipy
ou de le construire à partir de la source dans un environnement virtuel.Pour les utilisateurs de Windows il y a un beau paquet binaire par Chris (attention: c'est un joli téléchargement volumineux, 191 MO):
Suivant les instructions données par " ami " qui fonctionne pour moi, bien que, il ya quelques morceaux pour elles, que vous pourriez avoir besoin:
1) Votre lapack répertoire, après décompression, peut être appelé lapack-X-Y (certains le numéro de version), de sorte que vous pouvez renommer que de LAPACK.
2) Dans ce répertoire, vous devrez peut-être faire:
Essayez d'utiliser