avanetten / simrdwn

Rapid satellite imagery object detection
216 stars 154 forks source link

Once again an UnsatisfiableError when building Dockerfile #65

Closed iboates closed 5 years ago

iboates commented 5 years ago

I have pulled the most recent changes from yesterday and am still faced with an Unsatisfiable Error, this time complaining about gdal and hdf5. Did the GDAL package break again already?

It occurs at step 19/37.

I am running on Ubuntu 18.04 if that makes any difference at all.

UnsatisfiableError: The following specifications were found to be in conflict:
  - gdal=2.4.1 -> libgdal==2.4.1=ha50d65d_7 -> hdf5[version='>=1.10.5,<1.10.6.0a0']
  - h5py=2.9.0
Use "conda search <package> --info" to see the dependencies for each package.
iboates commented 5 years ago

It looks like no version of h5py will accept a version of hdf5 greater than 1.10.5, verified with conda search h5py --info | grep -E "h5py |hdf5" (Returns the h5py package name and a single tabbed line underneath with its corresponding version of hdf5)

But then libgdal demands that the version of hdf5 be >=1.10.5, verified with conda search libgdal=2.4.1 --info

The latest GDAL I can find which accepts a version of hdf5 is 2.3.3, but bumping it down to that version then complains about another confliict, this time between gdal and pyproj:

UnsatisfiableError: The following specifications were found to be in conflict:
  - gdal=2.3.3 -> libgdal==2.3.3=hdb8f723_1 -> geotiff[version='>=1.4.2,<1.5.0a0'] -> proj4[version='>=5.2.0,<5.2.1.0a0']
  - pyproj=2.1.3
Use "conda search <package> --info" to see the dependencies for each package.

I'll keep picking at this and update my progress but I have a bad feeling that what I end up with won't even run properly in the end.

iboates commented 5 years ago

I bumped the pyproj version down to 1.9.6 and now everything seems to install correctly, but I am not convinced that the image will even build at all, and if so, that it will function correctly. Fingers crossed, I'm going for another build.

iboates commented 5 years ago

Yeah, I built the image and launched the container, but now when I try to start trying to train, I get this:

Traceback (most recent call last):
  File "/simrdwn/simrdwn/core/simrdwn.py", line 24, in <module>
    import post_process
  File "/simrdwn/simrdwn/core/post_process.py", line 10, in <module>
    from osgeo import ogr
  File "/opt/conda/envs/simrdwn/lib/python3.6/site-packages/osgeo/__init__.py", line 21, in <module>
    _gdal = swig_import_helper()
  File "/opt/conda/envs/simrdwn/lib/python3.6/site-packages/osgeo/__init__.py", line 17, in swig_import_helper
    _mod = imp.load_module('_gdal', fp, pathname, description)
  File "/opt/conda/envs/simrdwn/lib/python3.6/imp.py", line 243, in load_module
    return load_dynamic(name, filename, file)
  File "/opt/conda/envs/simrdwn/lib/python3.6/imp.py", line 343, in load_dynamic
    return _load(spec)
ImportError: libicui18n.so.64: cannot open shared object file: No such file or directory

My guess is that bumping down the versions has stopped things from working properly.

jacquesmats commented 5 years ago

Same here

avanetten commented 5 years ago

I'm not seeing any errors with pyproj=1.9.6. See if the updated Dockerfile builds now.

iboates commented 5 years ago

@avanetten Did you bump down gdal to 2.3.3 as well? Or just pyproj?

avanetten commented 5 years ago

See the updated Dockerfile

JinyuanShao commented 5 years ago

@iboates I met the same problems as yours. Hello, just changing pyproj version as 1.9.6 can fix all the building docker problems?