h5 python extension import error under version.py file within h5py


#1

I am just starting to run zipline codes magic commend %load_ext zipline and already got into below issues.

Tried the installations/reinstallations in 2.10.x or 3.1.0 but would not resolve.
it seems to me the version.py code is setting up the version required from hdf5 and instruct accordingly via the h5.pyx python extension file which i checked does not exist in both versions of h5py, no matter installed via conda/pypi or even just directly installed from the wheel file.

Could you help advise where can I obtain the h5.pyx file? why was it removed? please refer to the version.py code for your kind reference that ran into issue.

error reference (from jupyter)

c:\users\jeffrey yim\anaconda3\envs\001zipline\lib\site-packages\h5py\**version.py** in <module>
     15 
     16 from collections import namedtuple
---> 17 from . import h5 as _h5
     18 import sys
     19 import numpy

h5py\h5.pyx in init h5py.h5()

ImportError: DLL load failed: The specified procedure could not be found.

Look forward to hearing from you soon. Many thanks.

Best regards,
Jeffrey Yim


#2

The .pyx files are Cython files - these get compiled into (on Windows) .pyd files - Python DLLs. So it’s normal not to see a .pyx file in your installed h5py.

The DLL error means that some other DLL it needs is missing. Unfortunately, the error message doesn’t say which one. It’s sometimes possible to use a program called dependency walker to figure it out, but I don’t have step-by-step instructions for how to do that or how to get the missing DLL if you do identify it.