|
From: Antonio V. <ant...@ti...> - 2012-08-27 16:42:14
|
Hi Stuart,
Il 27/08/2012 17:43, Stuart Mentzer ha scritto:
> Hello,
>
> I upgraded to PyTables 2.4.0 and I was "freezing" an application on Windows with PyInstaller. The frozen app fails at this new find_library call in __init__.py:
>
> if not ctypes.util.find_library('hdf5dll.dll'):
> raise ImportError('Could not load "hdf5dll.dll", please ensure' +
> ' that it can be found in the system path')
>
> PyInstaller correctly places this DLL in the same directory as the application .exe where standard Windows DLL search logic will find it. Apparently the find_library doesn't do that in a frozen application. That is a big problem. I had to comment this code out to get a working frozen app.
>
> That code was added in revision e9f6919.
>
It is mainly a sanity check added under request of one of our users:
https://github.com/PyTables/PyTables/pull/146
> This is on Windows 7 64-bit with a 32-bit Python toolchain. Trying both PyInstaller 1.5.1 and 2.0.
>
> Should I file a bug report? Any easy work-around?
>
> Thanks,
> Stuart
>
Yes please file a pull request with your patch.
It would be nice to preserve the sanity check in standard case so,
maybe, a good solution could be adding some check on sys.frozen or
something like that.
Thank you
--
Antonio Valentino
|