Thanks to visit codestin.com
Credit goes to github.com

Skip to content

Upgrading PyTables from PyPi proceeds but the DLL is not working on WinPython-3.6.1 #543

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Closed
ankostis opened this issue Jun 19, 2017 · 5 comments

Comments

@ankostis
Copy link

ankostis commented Jun 19, 2017

Hi @stonebig, my apologies if this is a well-known issue in general:

The PyTables project pushes also Windows binary wheels into PyPi
but when I try to upgrade to them, the resulting package is non-functional, at least on WinPython-3.6.1:

$ pip install tables
Collecting tables
  Downloading tables-3.4.0-cp36-cp36m-win_amd64.whl (2.5MB)
    100% |████████████████████████████████| 2.5MB 199kB/s
Requirement already satisfied: numpy>=1.8.0 in d:\apps\winpython-64bit-3.6.1.0qt5\python-3.6.1.amd64\lib\site-packages (from tables==v3.4.0)
Requirement already satisfied: six in d:\apps\winpython-64bit-3.6.1.0qt5\python-3.6.1.amd64\lib\site-packages (from tables==v3.4.0)
Requirement already satisfied: numexpr>=2.5.2 in d:\apps\winpython-64bit-3.6.1.0qt5\python-3.6.1.amd64\lib\site-packages (from tables==v3.4.0)
Installing collected packages: tables
Successfully installed tables-3.4.0

$ python -c 'import tables'
Traceback (most recent call last):
  File "<string>", line 1, in <module>
  File "D:\Apps\WinPython-64bit-3.6.1.0Qt5\python-3.6.1.amd64\lib\site-packages\tables\__init__.py", line 74, in <module>
    ' that it can be found in the system path' % hdf5_dlls)
ImportError: Could not load any of ['hdf5.dll', 'hdf5dll.dll'], please ensure that it can be found in the system path

But if I use Gohlke's unofficial, it works fine.

Inside the installed packages, in both cases, the DLLs exist, but they are different:

## Gohlke's unofficial:
$ sha256sum.exe */d/apps/winpython-64bit-3.6.1.0qt5/python-3.6.1.amd64/lib/site-packages/tables/hdf5.dll
5eb2c58ff1383cfeebbb9889bd30a8b8aa8829297a0716d914cce4f410c58c21 */d/tmp/PyTablesPACKAGE-WinPy3.6.1-3.4.2/tables/hdf5.dll
(
## From PyPi:
$ sha256sum.exe /d/tmp/PyTablesPACKAGE-WinPy3.6.1-3.4.2/tables/hdf5.dll
5eb2c58ff1383cfeebbb9889bd30a8b8aa8829297a0716d914cce4f410c58c21 */d/tmp/PyTablesPACKAGE-WinPy3.6.1-3.4.2/tables/hdf5.dll

So the problem is that the DLLs are incombatible.

Why is that?

@cgohlke
Copy link

cgohlke commented Jun 19, 2017

The official PyTables wheels are broken (missing DLL).

@ankostis
Copy link
Author

ankostis commented Jun 20, 2017

At least for 3.4.2, the DLLs are included in the officially released wheel in the same path as yours: tables-3.4.2-cp36-cp36m-win_amd64.whl: tables-3.4.2.data\data\Lib\site-packages\tables\:

- Gohlke: (SHA256: c0c55af4ba5b043ac191c15e166b1937)
  - hdf5.dll    3,025,408   08/05/2017 22:54    5148f434cddb64087591173333200297
  - libbz2.dll  61,440      09/09/2015 21:03    a2a844547083f494b3e2845681ef6392

- PyPiRepo (SHA256: 6671dc33324a07f4497695c7c8767544)
  - hdf5.dll    2,284,544   20/07/2016 19:28    SHA256: 5eb2c58ff1383cfeebbb9889
  - bzip2.dll   177,152	    24/05/2016 20:05    SHA256: 30ffd3863d2ce2a0ee4c76a1

Could it be something else?

@cgohlke
Copy link

cgohlke commented Jun 20, 2017

The hdf5.dll in the official pytables distribution depends on zlib.dll, which is not distributed.

@ankostis
Copy link
Author

Thanks, opened issue #635 on PyTables project for this.

@tomkooij
Copy link

Thanks @ankostis and @cgohlke for spotting this.

@stonebig stonebig closed this as completed May 4, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants