dlandon / zoneminder.machine.learning

Zoneminder Docker
GNU General Public License v2.0
320 stars 144 forks source link

add library libgeos-dev to install #193

Open scotthraban opened 3 years ago

scotthraban commented 3 years ago

Please consider this change - I attempted to build the docker image myself using the multi-arch buildx way, as I wanted to try to run this image on a Raspberry PI.

The install docs do say that it is needed, maybe it is possible that the phusion/baseimage for arm64 does not include the library?

I would think that it would not be harmful to include this library by default and if it is already installed then it will just be skipped.

Thanks for your consideration!

scotthraban commented 3 years ago

Oh, duh, I neglected to include the failure seen while building the image:

#11 134.0 Collecting Shapely
#11 134.1   Downloading Shapely-1.7.1.tar.gz (383 kB)
#11 136.0     ERROR: Command errored out with exit status 1:
#11 136.0      command: /usr/bin/python3 -c 'import sys, setuptools, tokenize; sys.argv[0] = '"'"'/tmp/pip-install-66nhjsz9/Shapely/setup.py'"'"'; __file__='"'"'/tmp/pip-install-66nhjsz9/Shapely/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-66nhjsz9/Shapely/pip-egg-info
#11 136.0          cwd: /tmp/pip-install-66nhjsz9/Shapely/
#11 136.0     Complete output (11 lines):
#11 136.0     Failed `CDLL(libgeos_c.so.1)`
#11 136.0     Failed `CDLL(libgeos_c.so)`
#11 136.0     Traceback (most recent call last):
#11 136.0       File "<string>", line 1, in <module>
#11 136.0       File "/tmp/pip-install-66nhjsz9/Shapely/setup.py", line 85, in <module>
#11 136.0         from shapely._buildcfg import geos_version_string, geos_version, \
#11 136.0       File "/tmp/pip-install-66nhjsz9/Shapely/shapely/_buildcfg.py", line 169, in <module>
#11 136.0         lgeos = load_dll('geos_c',
#11 136.0       File "/tmp/pip-install-66nhjsz9/Shapely/shapely/_buildcfg.py", line 162, in load_dll
#11 136.0         raise OSError(
#11 136.0     OSError: Could not find library geos_c or load any of its variants ['libgeos_c.so.1', 'libgeos_c.so']
#11 136.0     ----------------------------------------
#11 136.0 ERROR: Command errored out with exit status 1: python setup.py egg_info Check the logs for full command output.