[gdal-dev] Running GDAL through Python >= 3.8 on Anaconda - DLL load failed

Pedro Venâncio pedrongvenancio at gmail.com
Wed Oct 13 08:04:19 PDT 2021


Hi Joaquim,

Thanks for sharing your case. Did you manage to make it work in some way?

I've already uninstalled a test PostgreSQL/PostGIS that I supposed to be
the source of the conflict, but I keep having the same error.

I also reinstalled conda, but nothing had changed.



Joaquim Manuel Freire Luís <jluis at ualg.pt> escreveu no dia quarta,
13/10/2021 à(s) 15:24:

> Hi,
>
>
>
> I have a certain horror to python (that I’m trying to fight) a bit of it
> is because I never manage to really use it.
>
>
>
> I had and older Miniconda (Mini => 18 GB !!!!) that was so big that I
> removed and installed a new one in which I tried Pedro’s case and got
> exactly the same errors.
>
>
>
> I then run a dependency analysis from within the conda shell and found two
> weird things
>
>
>
>    1. The gdal dll depends on a xerces-c_3_2.dll locate at
>    C:\WINDOWS\system32. This seems quite dangerous (for dependency sakes) but
>    seems to not cause any problem in this case.
>    2. There is a “red mark” on the opj_encoder_set_extra_options symbol
>    and this alone can explain the “ImportError: DLL load failed while
>    importing _gdal: The specified procedure could not be found.”
>
>
>
> Hopefully the screen capture is small enough to get through.
>
>
>
> Joaquim
>
>
>
> *From:* gdal-dev <gdal-dev-bounces at lists.osgeo.org> *On Behalf Of *Even
> Rouault
> *Sent:* Wednesday, October 13, 2021 2:39 PM
> *To:* Pedro Venâncio <pedrongvenancio at gmail.com>
> *Cc:* gdal-dev at lists.osgeo.org
> *Subject:* Re: [gdal-dev] Running GDAL through Python >= 3.8 on Anaconda
> - DLL load failed
>
>
>
> ok, so now you have to inspect the PATH and fix it so that the gdal DLL
> and its dependencies are in it. But all of this sounds like there's
> something weird in your environment. Perhaps a mix of GDAL versions?
>
> Le 13/10/2021 à 15:36, Pedro Venâncio a écrit :
>
> Can you change in __init__.py
>
>                 try:
>                     os.add_dll_directory(p)
>                 except FileNotFoundError:
>                     continue
>
>
>
> to
>
>                 try:
>                     os.add_dll_directory(p)
>                 except (FileNotFoundError, OSError):
>                     continue
>
>
>
> Yes, here is the output:
>
> Traceback (most recent call last):
>
>   File "C:\Users\PedroVenancio\anaconda3\envs\arosics\lib\site-packages\osgeo\__init__.py", line 21, in swig_import_helper
>
>     return importlib.import_module(mname)
>
>   File "C:\Users\PedroVenancio\anaconda3\envs\arosics\lib\importlib\__init__.py", line 127, in import_module
>
>     return _bootstrap._gcd_import(name[level:], package, level)
>
>   File "<frozen importlib._bootstrap>", line 1014, in _gcd_import
>
>   File "<frozen importlib._bootstrap>", line 991, in _find_and_load
>
>   File "<frozen importlib._bootstrap>", line 975, in _find_and_load_unlocked
>
>   File "<frozen importlib._bootstrap>", line 657, in _load_unlocked
>
>   File "<frozen importlib._bootstrap>", line 556, in module_from_spec
>
>   File "<frozen importlib._bootstrap_external>", line 1166, in create_module
>
>   File "<frozen importlib._bootstrap>", line 219, in _call_with_frames_removed
>
> ImportError: DLL load failed while importing _gdal: Impossível localizar o procedimento especificado.
>
>
>
> During handling of the above exception, another exception occurred:
>
>
>
> Traceback (most recent call last):
>
>   File "demo.py", line 1, in <module>
>
>     from osgeo import gdal
>
>   File "C:\Users\PedroVenancio\anaconda3\envs\arosics\lib\site-packages\osgeo\__init__.py", line 37, in <module>
>
>     _gdal = swig_import_helper()
>
>   File "C:\Users\PedroVenancio\anaconda3\envs\arosics\lib\site-packages\osgeo\__init__.py", line 34, in swig_import_helper
>
>     return importlib.import_module('_gdal')
>
>   File "C:\Users\PedroVenancio\anaconda3\envs\arosics\lib\importlib\__init__.py", line 127, in import_module
>
>     return _bootstrap._gcd_import(name[level:], package, level)
>
> ModuleNotFoundError: No module named '_gdal'
>
>
>
> --
>
> http://www.spatialys.com
>
> My software is free, but my time generally not.
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.osgeo.org/pipermail/gdal-dev/attachments/20211013/c69d46e7/attachment.html>


More information about the gdal-dev mailing list