Dear Zipline Maintainers,
Before I tell you about my issue, let me describe my environment:
docker version
Client: Docker Engine - Community
Version: 19.03.4
API version: 1.40
Go version: go1.12.10
Git commit: 9013bf5
Built: Thu Oct 17 23:44:48 2019
OS/Arch: windows/amd64
Experimental: false
Server: Docker Engine - Community
Engine:
Version: 19.03.4
API version: 1.40 (minimum version 1.12)
Go version: go1.12.10
Git commit: 9013bf5
Built: Thu Oct 17 23:50:38 2019
OS/Arch: linux/amd64
Experimental: false
containerd:
Version: v1.2.10
GitCommit: b34a5c8af56e510852c35414db4c1f4fa6172339
runc:
Version: 1.0.0-rc8+dev
GitCommit: 3e425f80a8c931f88e6d94a8c831b9d5aa481657
docker-init:
Version: 0.18.0
GitCommit: fec3683
Now that you know a little about me, let me tell you about the issue I am
having:
Building Docker image fails with Could not find a local HDF5 installation.
Docker image is build
Image build failed with Could not find a local HDF5 installation.
Here is how you can reproduce this issue on your machine:
695117cca791f0d3029994b4a905b25816ae406f at the time of reporting the issues: https://github.com/quantopian/zipline/tree/695117cca791f0d3029994b4a905b25816ae406f)docker build -t quantopian/zipline .Sincerely,
Michal
Step 14/16 : RUN pip install -e .
---> Running in 0fbe5bf136cb
Obtaining file:///zipline
......
Collecting tables>=3.4.3
Downloading https://files.pythonhosted.org/packages/2b/32/847ee3f521aae6a0be380d923a736162d698586f444df1ac24b98c65025c/tables-3.6.1.tar.gz (4.6MB)
ERROR: Command errored out with exit status 1:
command: /usr/local/bin/python -c 'import sys, setuptools, tokenize; sys.argv[0] = '"'"'/tmp/pip-install-jo_joay2/tables/setup.py'"'"'; __file__='"'"'/tmp/pip-install-jo_joay2/tables/setup.py'"'"';f=getattr(tokenize, '"'"'open'"'"', open)(__file__);code=f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' egg_info --egg-base /tmp/pip-install-jo_joay2/tables/pip-egg-info
cwd: /tmp/pip-install-jo_joay2/tables/
Complete output (15 lines):
/tmp/H5closef2fcwrsa.c:1:1: warning: return type defaults to ‘int’ [-Wimplicit-int]
main (int argc, char **argv) {
^~~~
/tmp/H5closef2fcwrsa.c: In function ‘main’:
/tmp/H5closef2fcwrsa.c:2:5: warning: implicit declaration of function ‘H5close’ [-Wimplicit-function-declaration]
H5close();
^~~~~~~
/usr/bin/ld: cannot find -lhdf5
collect2: error: ld returned 1 exit status
* Using Python 3.5.9 (default, Nov 15 2019, 04:15:03)
* USE_PKGCONFIG: True
.. ERROR:: Could not find a local HDF5 installation.
You may need to explicitly state where your local HDF5 headers and
library can be found by setting the ``HDF5_DIR`` environment
variable or by using the ``--hdf5`` command-line option.
----------------------------------------
ERROR: Command errored out with exit status 1: python setup.py egg_info Check the logs for full command output.
The command '/bin/sh -c pip install -e .' returned a non-zero code: 1
Thank you @willianpaixao The image has got build.
Most helpful comment
I confirm that this problem happens with me too.
I'm assuming the Docker image is not maintained, since this error seems to be started long time ago. [1]
According to the official documentation of HDF5, we just need to add the libraries' headers. [2] [3]
I'll send a PR to fix this.