【问题标题】:GeoDjango 在 Windows 10 中找不到 GDAL 库
【发布时间】:2018-02-28 23:41:55
【问题描述】:

我在 Windows 10 上使用 Django 11.4,但在尝试迁移模型时遇到了问题。我收到此错误:

django.core.exceptions.ImproperlyConfigured: Could not find the GDAL library (tried "gdal201", "gdal20", "gdal111", "gdal110", "gdal19")

我按照 GeoDjango 的安装说明 (https://docs.djangoproject.com/en/1.11/ref/contrib/gis/install/),但仍然遇到问题。我在此错误中发现的所有内容都表明要更改系统环境变量。

我安装了OSGe4W 并添加了GDAL_DATA = C:\OSGeo4W\share\gdal 以及PROJ_LIB= C:\OSGeo4W\share\proj

我不确定还有什么可以尝试的,如果有更多见解,我将不胜感激。

【问题讨论】:

  • 您尝试设置了吗? GDAL_LIBRARY_PATH
  • 你有想过这个吗?

标签: django windows-10 environment-variables gdal geodjango


【解决方案1】:

我遇到了同样的问题,对我来说,问题是我在更新用于搜索 GDAL 库的 PATH 环境变量之前启动了我的 cmd shell。我只需要重新启动我的 shell,一切正常。

【讨论】:

    【解决方案2】:

    我通过编辑 %PYTHONPATH%\Lib\site-packages\django\contrib\gis\gdal 中的 libgdal.py 文件并将 str('gdal202') 添加到第 26 行来解决此问题:

     lib_names = [str('gdal201'), str('gdal202'), str('gdal111'), str('gdal110'), str('gdal19')]
    

    根据您使用的 GDAL 版本,您可能需要添加不同的版本号。

    【讨论】:

    【解决方案3】:

    在尝试了许多解决方案后,包括重新安装、添加到路径等,我发现这个相对简单的解决方案对我有用。

    https://stackoverflow.com/a/49159195/3768552

    【讨论】:

      【解决方案4】:

      此解决方案 100% 有效。如果您还没有,请尝试一下。

      首先,从Christoph Gohlke's Unofficial Windows Binaries for Python Extension Packages下载GDAL轮。

      确保通过在终端中打开 python 来检查你的 python 版本。 你会看到这样的输出:

      Python 3.8.5 (tags/v3.8.5:580fbb0, Jul 20 2020, 15:43:08) [MSC v.1926 32 bit (Intel)] on win32
      Type "help", "copyright", "credits" or "license" for more information.
      

      在上面几行中,python 版本是 3.8.5,它是 32 位的。所以我必须从链接中选择的包将是“GDAL-3.3.3-cp38-cp38-win32.whl”。你应该同样选择你的。

      完成后运行

      pip install whl/GDAL-3.3.3-cp38-cp38-win32.whl
      

      安装 GDAL 后。将以下代码粘贴到您的 settings.py 文件中

      import os
      if os.name == 'nt':
          VENV_BASE = os.environ['VIRTUAL_ENV']
          os.environ['PATH'] = os.path.join(VENV_BASE, 'Lib\\site-packages\\osgeo') + ';' + os.environ['PATH']
          os.environ['PROJ_LIB'] = os.path.join(VENV_BASE, 'Lib\\site-packages\\osgeo\\data\\proj') + ';' + os.environ['PATH']
      

      你很高兴。

      【讨论】:

        猜你喜欢
        • 2021-12-14
        • 1970-01-01
        • 2018-08-14
        • 1970-01-01
        • 2020-09-25
        • 2012-02-24
        • 2018-07-24
        • 2020-02-12
        • 2012-01-07
        相关资源
        最近更新 更多