当我尝试加载 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?如果它报告它的名字,我会检查路径。
现在我已经安装了这个
还有这个
我在 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
还有什么巫术可以尝试?
最佳答案
我注意到的主要事情是您似乎已经安装了 Python 3.4 绑定(bind),但使用的是 Python 3.5?那是对的吗?这可能是一个线索。
您可以使用 Dependency Walker 之类的工具来进一步调查问题。 https://en.wikipedia.org/wiki/Dependency_Walker
您的 PATH 变量中真的只有三个路径吗?对于 PATH 变量,顺序很重要。
自从我从“conda-forge” channel 切换到 Miniconda + GDAL 后,我的 DLL 问题(几乎)减少了,我强烈推荐它。但这并不能回答您的问题。
关于python - DLL 加载失败 : Unable to use GDAL on windows,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44033109/