DLL加载失败:无法在Windows上使用GDAL

3
当我尝试加载GDAL时,出现以下错误:
C:\Windows\System32>python
Python 3.5.2 (v3.5.2:4def2a2901a5, Jun 25 2016, 22:18:55) [MSC v.1900 64 bit (AMD64)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>> from osgeo import gdal;
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "C:\Python35\lib\site-packages\osgeo\__init__.py", line 21, in <module>
    _gdal = swig_import_helper()
  File "C:\Python35\lib\site-packages\osgeo\__init__.py", line 17, in swig_import_helper
    _mod = imp.load_module('_gdal', fp, pathname, description)
  File "C:\Python35\lib\imp.py", line 242, in load_module
    return load_dynamic(name, filename, file)
  File "C:\Python35\lib\imp.py", line 342, in load_dynamic
    return _load(spec)
ImportError: DLL load failed: The specified module could not be found

如何知道它需要哪个 DLL?如果它报告了它的名称,我会检查路径。
目前我已经安装了这个:http://download.gisinternals.com/sdk/downloads/release-1500-x64-gdal-2-1-3-mapserver-7-0-4/gdal-201-1500-x64-core.msi 和 这个:http://download.gisinternals.com/sdk/downloads/release-1500-x64-gdal-2-1-3-mapserver-7-0-4/GDAL-2.1.3.win-amd64-py3.4.msi
我在 C:\Python35 中设置了 Python 并明确地设置了它,以供后面的安装使用。
路径已设置。
>echo %PATH%
C:\Python35;C:\Program Files\GDAL;C:\Python35\Scripts;

变量已经设置

>echo %GDAL_DATA%
C:\Program Files\GDAL\gdal-data

>echo %GDAL_DRIVER_PATH%
C:\Program Files\GDAL\gdalplugins

还有什么其他的巫术可以尝试吗?

1个回答

0

我注意到的主要问题是,你似乎安装了Python 3.4的绑定库,但使用的是Python 3.5?这正确吗?这可能是一个线索。

你可以使用类似Dependency Walker的工具进一步调查此问题。 https://en.wikipedia.org/wiki/Dependency_Walker

你的PATH变量中只有三个路径吗?请注意,PATH变量中的顺序很重要。

自从我切换到Miniconda + GDAL(来自‘conda-forge’渠道)后,我的DLL问题(几乎)消失了,我强烈推荐使用。虽然这不是你的问题的答案。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接