2016-03-22 20 views
4

Tun Sie dies auf einem Linux Mint 17.1.Für Python, installieren Sie hdf5/netcdf4

Wenn ich versuche:

pip install hdf5

ich den Fehler

"Could not find a version that satisfies the requirement hdf5 (from versions:) No matching distribution found for hdf5"

ich auf lange Sicht versuchen, zu installieren netcdf4 kann aber nicht tun bekommen, bis ich bekommen hdf5 installiert. Angeblich von dem, als ich dies letzte Woche mit netcdf4 versuchte, sollte ich die pip install netcdf4, err hdf5 verwenden ... zumindest vielleicht im Fall von hdf5.

Wenn ich pip install h5py versuche ich bekommen, dass die SMS-Nachricht::

Requirement already satisfied (use --upgrade to upgrade): h5py in ./anaconda3/lib/python3.5/site-packages Requirement already satisfied (use --upgrade to upgrade): numpy>=1.6.1 in ./anaconda3/lib/python3.5/site-packages (from h5py) Requirement already satisfied (use --upgrade to upgrade): six in ./anaconda3/lib/python3.5/site-packages (from h5py)

Doch wenn ich weitermachen und versuchen pip install netcdf4 es kommt und sagt:

Collecting netcdf4 Using cached netCDF4-1.2.3.1.tar.gz Complete output from command python setup.py egg_info: Package hdf5 was not found in the pkg-config search path. Perhaps you should add the directory containing hdf5.pc‘ auf die PKG_CONFIG_PATH Umgebungsvariable Kein Paket 'hdf5' gefunden Cython Version 0.23.4 gefunden ... Lesen von setup.cfg ...

HDF5_DIR environment variable not set, checking some standard locations .. 
checking /home/meant2b ... 
checking /usr/local ... 
checking /sw ... 
checking /opt ... 
checking /opt/local ... 
checking /usr ... 
Traceback (most recent call last): 
    File "<string>", line 1, in <module> 
    File "/tmp/pip-build-pq3yt4ek/netcdf4/setup.py", line 286, in <module> 
    raise ValueError('did not find HDF5 headers') 
ValueError: did not find HDF5 headers 

---------------------------------------- 

Command "Python setup.py egg_info" Fehler mit Fehlercode 1 in/tmp/Pip-build-pq3yt4ek/netcdf4/`

Wenn ich die Dateien suchen Ich finde keine hdf5.pc Datei.

Gibt es einen Unterschied zwischen h5py und hdf5? Muss ich hdf5 aus den einzelnen Dateien kompilieren und installieren oder kann ich pip installieren.

Was muss ich tun, um sowohl hdf5 als auch netcdf4 installieren zu können?

+0

Ich habe vor kurzem das gleiche in Kubuntu gemacht und stieß auf ein ähnliches Problem. Für mich hat es geholfen, hdf5-helpers und hdf5-tools (nicht via pip, sondern apt-get) und deren Anforderungen zu installieren. Dies ist keine echte Antwort auf Ihre Frage, nur eine schnelle Lösung. – StefanS

+0

Wenn ich mich richtig an die letzte Woche erinnere, als ich die Zeit hatte und versuchte, dies zu tun, hatte ich die gleiche Erwähnung irgendwo gesehen und versuchte es mit dem gleichen "Mangel" an Ergebnissen, den ich immer noch bekomme. – confused

+0

Haben Sie versucht, diese Pakete in Anaconda zu installieren? 'conda install hdf5'und' conda install netcdf4' – N1B4

Antwort

2

Sie müssen die HDF5-Bibliotheken für Ihre Linux-Distribution installieren. In Ubuntu ist:

sudo apt-get install libhdf5-serial-dev netcdf-bin libnetcdf-dev

this link See.

+0

Ich habe gerade das getan, aber ich bekomme immer noch das gleiche Kein Modul namens hdf5 und/oder netcdf4. – confused

+0

Haben Sie diese Schritte ausgeführt: * Linux-Bibliotheken installieren * pip install h5py * pip installieren netcdf4-python? Hast du python-dev installiert? – tuned

+0

Die ersten beiden funktionieren in Ordnung, aber als ich zu * pip installiere netcdf4-python * bekomme ich den Fehler Konnte keine Version finden, die die Anforderung erfüllt. Keine passende Distribution für netcdf4-python gefunden. Wenn ich nur * pip installiere netcdf4 sagt es die Anforderung bereits erfüllt. Also habe ich mich entschieden, netcdf4 zu aktualisieren, was besagt, dass es netcdf4-1.2.3.1 erfolgreich installiert hat, aber ich bekomme immer noch das gleiche Nein Modul namens netcdf4, wenn ich import netcdf4 im Leerlauf eintippe. – confused

0

ich das gleiche Problem in Debian 8. hatte es zu beheben, als root, ich die Bibliotheken installiert, verknüpft dann die seriellen Header ein Verzeichnis innerhalb der hdf5 Bibliotheken enthalten, die HDF_DIR Pfad exportiert und installiert netCDF4:

# apt-get install -y libhdf5-dev libnetcdf-dev 
# ln -s /usr/include/hdf5/serial /usr/include/hdf5/include 
# export HDF5_DIR=/usr/include/hdf5 
# pip install netCDF4