Ich versuche, die erforderlichen Bibliotheken in einem Paket zu erstellen, das ich verteile. Es erfordert sowohl die SciPy- als auch die NumPy- Bibliothek. Während der Entwicklung habe ich beide mit installiert
apt-get install scipy
das SciPy 0.9.0 und NumPy 1.5.1 installiert hat, und es hat gut funktioniert.
Ich möchte dasselbe mit pip install
- tun , um Abhängigkeiten in einer setup.py meines eigenen Pakets angeben zu können.
Das Problem ist, wenn ich versuche:
pip install 'numpy==1.5.1'
es funktioniert gut.
Aber dann
pip install 'scipy==0.9.0'
scheitert kläglich mit
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.
Wie bringe ich es zum Laufen?
numpy=1.5.1
anstattnumpy==1.5.1
(doppelt gleich)?blas-devel
undlapack-devel
. Dies ist im Dokument nicht angegeben, muss jedoch durchgeführt werden, wenn Sie mit PIP installieren möchten.Antworten:
Ich gehe in meiner Antwort von Linux-Erfahrung aus. Ich fand heraus, dass es drei Voraussetzungen gibt,
pip install scipy
um gut vorgehen zu können.Gehen Sie hier: SciPY installieren
Befolgen Sie die Anweisungen zum Herunterladen, Erstellen und Exportieren der env-Variablen für BLAS und anschließend für LAPACK . Achten Sie darauf, die Shell-Befehle nicht nur blind auszuschneiden und einzufügen. Abhängig von Ihrer Architektur usw. müssen Sie einige Zeilen auswählen und die richtigen Verzeichnisse korrigieren / hinzufügen, die fälschlicherweise als angenommen werden Gut.
Das dritte, was Sie möglicherweise benötigen, ist die Installation von numpy-f2py oder einem gleichwertigen Programm .
Oh ja, und schließlich müssen Sie möglicherweise gcc-gfortran installieren, da die oben genannten Bibliotheken Fortran- Quellen sind.
quelle
apt-get
als Paketmanager, aber diese Antwort verwendetyum
. Es ist nichts Falsches daran, Antworten zu geben, die zusätzliche Plattformen abdecken, aber sie sollten als solche gekennzeichnet sein. Dies wird Unix-Noobs sonst unnötig verwirren.yum install lapack-devel.x86_64 blas-devel.x86_64
Dies funktionierte für mich unter Ubuntu 14.04:
quelle
libblas-dev liblapack-dev
behoben,blas
aber dann bekamerror: library dfftpack has Fortran sources but no Fortran compiler found
ich alle diese, um scipy installieren zu können. Danke dir.libblas-dev liblapack-dev gfortran
, es funktioniert für mich auf Ubuntu14.04Sie benötigen die Entwicklungspakete libblas und liblapack, wenn Sie Ubuntu verwenden.
quelle
Da die vorherigen Anweisungen zur Installation mit yum nicht korrekt sind, finden Sie hier die aktualisierten Anweisungen zur Installation auf so etwas wie Fedora. Ich habe dies auf "Amazon Linux AMI 2016.03" getestet.
quelle
Ich arbeitete an einem Projekt, das von Numpy und Scipy abhing. In einer Neuinstallation von Fedora 23 mit einer virtuellen Python-Umgebung für Python 3.4 (funktionierte auch für Python 2.7) und mit den folgenden Angaben in meiner setup.py (in der
setup()
Methode)Ich stellte fest, dass ich Folgendes ausführen musste, um
pip install -e .
zur Arbeit zu kommen:und
Das
redhat-rpm-config
ist für scipys Gebrauchredhat-hardened-cc1
im Gegensatz zum regulärencc1
quelle
Auf Windows
python
3.5 konnte ich installieren ,scipy
indem Sieconda
nichtpip
:quelle
Welches Betriebssystem ist das? Die Antwort hängt möglicherweise vom jeweiligen Betriebssystem ab. Es sieht jedoch so aus, als müssten Sie diese BLAS- Bibliothek finden und installieren. Es scheint nicht in PIP zu sein (Sie müssen es also von Hand machen), aber wenn Sie es installieren, sollten Sie damit Ihre SciPy-Installation fortsetzen können.
quelle
sudo apt-get install liblapack-dev libatlas-dev
plus vielleicht auch tun,python-dev gfortran
wenn Sie sie vermissen.In meinem Fall hat das Aufrüsten von Pip den Trick getan. Außerdem habe ich scipy mit dem Parameter -U installiert (aktualisiere alle Pakete auf die letzte verfügbare Version).
quelle