2012-07-20 17 views
10

Estoy trabajando en un proyecto que implica colas de mensajes de red (msgpack, zmq, ...) en un sistema RHEL 6.3 (x86_64). Estaba instalando los paquetes más recientes de glib, gevent, pygobject, pygtk, y otros para que funcione pylab/matplotlib (que tampoco ha tenido éxito).hdf5/h5py ImportError: libhdf5.so.7

Después de darme por vencido volví a mi código y de alguna manera había logrado destruir mi instalación hdf5/h5py - h5py no puede encontrar libhdf5.so.7 en la importación. De inmediato reinstalado en hdf5-1.8.9// local/usr hdf5 en RHEL 6.3 (x86_64) de la siguiente manera:

./configure --prefix=/usr/local/hdf5 
make 
make check 
sudo make install 
make check install 

que parecía funcionar bien. Luego fui a reinstalar h5py (en Python 2.7.3):

python2.7 setup.py build --hdf5=/usr/local/hdf5/ 
python2.7 setup.py test # optional 
# sudo python2.7 setup.py install 

la que no se puede importar el archivo _errors en las pruebas, así:

====================================================================== 
ERROR: _hl.tests.test_attrs_data (unittest.loader.ModuleImportFailure) 
---------------------------------------------------------------------- 
ImportError: Failed to import test module: _hl.tests.test_attrs_data 
Traceback (most recent call last): 
    File "/usr/local/lib/python2.7/unittest/loader.py", line 252, in _find_tests 
    module = self._get_module_from_name(name) 
    File "/usr/local/lib/python2.7/unittest/loader.py", line 230, in _get_module_from_name 
    __import__(name) 
    File "/home/cronburg/Downloads/h5py-2.0.1/build/lib.linux-x86_64-2.7/h5py/_hl/tests/test_attrs_data.py", line 5, in <module> 
    import h5py 
    File "/home/cronburg/Downloads/h5py-2.0.1/build/lib.linux-x86_64-2.7/h5py/__init__.py", line 1, in <module> 
    from h5py import _errors 
ImportError: libhdf5.so.7: cannot open shared object file: No such file or directory 


---------------------------------------------------------------------- 
Ran 12 tests in 0.001s 

FAILED (errors=12) 

h5py estaba funcionando bien antes de ir a instalar los paquetes/tarballs antes mencionados, y no recuerdo haber tocado nada que se pareciera remotamente a hdf5. ¿Algunas ideas?

EDIT: tratando de localizar el archivo sólo muestra en la localización i untarred que:

[email protected]:~/Downloads/h5py-2.0.1$ locate libhdf5.so.7 
/home/cronburg/tmp/hdf5-1.8.9/hdf5/lib/libhdf5.so.7 
/home/cronburg/tmp/hdf5-1.8.9/hdf5/lib/libhdf5.so.7.0.3 
/home/cronburg/tmp/hdf5-1.8.9/src/.libs/libhdf5.so.7 
/home/cronburg/tmp/hdf5-1.8.9/src/.libs/libhdf5.so.7.0.3 
+5

Agregado **/usr/local/hdf5/lib/** a ** ** LD_LIBRARY_PATH y ahora trabaja h5py (que se encuentra en el .so allí). – KarlC

Respuesta

0

echar un vistazo en: http://rpm.pbone.net/index.php3/stat/3/srodzaj/1/search/libhdf5.so.7()(64bit)

O debería probar este repo: https://ius.io/Packages/

Prefiero usar siempre la versión más actualizada de Python, en un formato de paquete.

https://dl.iuscommunity.org/pub/ius/stable/Redhat/6/x86_64/repoview/python27.html

sudo yum install -y https://centos6.iuscommunity.org/ius-release.rpm 
sudo yum install -y python27 
sudo yum install -y python27-devel 

Hacer un pip install y ser feliz:

$ sudo pip install h5py 
Installing collected packages: h5py 
Successfully installed h5py-2.6.0 
+0

KarlC echar un vistazo – sharkguto

+0

No fue útil para mi situación, ya que necesitaba instalar hdf5 manualmente por alguna razón (esta es una pregunta de 4 años, no puedo recordar por qué - probablemente necesitaba una versión que no está en 'pip' en el momento) La pregunta es más bien: "Estoy compilando este paquete, ¿por qué recibo este error?", No "Por favor, enséñame a usar pip y el administrador de paquetes RHEL". – KarlC

-1

Esto también me sucedió cuando se utiliza en un h5py raspbian limpio. Primero debe instalar las bibliotecas del sistema.

apt install libhdf5-dev 

continuación

pip install h5py 
+1

Para ubuntu con la versión actualmente soportada de h5py, sí. Sin embargo, mi pregunta fue para Rhel con una versión de h5py no admitida por los repositorios. – KarlC

+0

Hizo un buen punto, es por eso que estaba haciendo referencia a raspbian como me pasó el día de la respuesta. Gracias – luismesas

Cuestiones relacionadas