【问题标题】:Can't install Fiona on Windows无法在 Windows 上安装 Fiona
【发布时间】:2018-11-25 08:46:28
【问题描述】:

我在 Ubuntu 上做了一个软件,但在 Windows 上运行这个软件时遇到了几个问题。

我现在最大的问题是我正在尝试安装“fiona”——我已经将它安装在我的 PIP 包中——但由于某种原因它无法正常工作。

所以我尝试通过从original repository 下载的安装程序来安装它。

遵守规则:使用 python setup.py install

我已经添加了一些环境变量:

GDAL_DATA GDAL_DRIVER_PATH 

除此之外,我还在变量PATH 上添加了GDAL 的路径

还有另一种方法可以做到这一点,通过使用另一个命令,但我不知道该怎么做

gdal include files

gdal library

python setup.py build_ext -I<path to gdal include files> -lgdal_i -L<path to gdal library> install --gdalversion 2.1

我当前的 GDAL 版本是 GDAL 1.11.4,于 2016/01/25 发布

我已经尝试过 2.3 等,但没有成功。

我试过只使用这个命令:

python setup.py install --gdalversion 1.11

fiona/_geometry.c(578) : fatal error C1083: Cannot open include file: 'ogr_api.h ': No such file or directory

当我尝试使用具有 fiona 的软件时,我收到以下错误:

    import fiona
  File "C:\Python27\fiona\__init__.py", line 81, in <module>
    from fiona.collection import Collection, BytesCollection
  File "C:\Python27\fiona\collection.py", line 9, in <module>
    from fiona.ogrext import Iterator, ItemsIterator, KeysIterator
ImportError: No module named ogrext

【问题讨论】:

  • 如果你不关心使用哪个 python 发行版,我发现在 miniconda 中从 conda-forge 安装 GDAL、Fiona 等更容易。

标签: python windows fiona


【解决方案1】:

在 Windows 上从源代码构建时,重要的是要知道 setup.py 不能依赖 gdal-config,它只存在于 UNIX 系统上。在 Windows 上,这些路径需要由用户提供。您需要找到 gdal 的包含文件和库文件并使用 setup.py

GDAL DLL 文件和 gdal-data 目录需要在您的 Windows PATH 中,否则构建 Fiona 将无法工作。

按照以下步骤在 Windows 上安装 Fiona 和 geopandas

第 1 步:this 网站下载 Fiona 轮。 请选择与您的 python 解释器以及系统构建相关的 .whl 包(即 32 位或 64 位)

第 2 步: 使用 pip install path/to/fiona.whl 安装 fiona

第 3 步:使用“pip install geopandas”安装 geopandas

【讨论】:

  • 什么 .dll 文件?我知道一个 .dll 文件 gdal301.dll,还有其他我需要添加到路径中的 dll 文件吗?
  • 这很有帮助,但我会添加第 0 步:安装 GDAL(与安装 Fiona 的方式相同)lfd.uci.edu/~gohlke/pythonlibs/#gdal
  • 在我的 W10 x64 上无法安装它:( 错误:Fiona-1.8.19-cp39-cp39-win_amd64.whl 不是该平台支持的轮子。错误:Fiona-1.8 .19-cp39-cp39-win32.whl 不是该平台支持的轮子。
  • 我在尝试 pip install fiona.whl 时收到 TypeError: Expected pinned or editable requirement, got GDAL==3.2.3,~=3.2.1。 GDAL.whl 安装良好。有什么想法吗?
  • @rheras,你安装了 Python 3.9 吗?在尝试安装 3.8 轮以查看它是否可以工作时,我遇到了与您相同的错误
【解决方案2】:

要在 Windows 上安装 Fiona,您需要按照以下步骤操作:-

  1. 您需要使用link 安装GDAL 轮文件。访问此链接后,下载此名为 GDAL‑3.0.4‑cp37‑cp37m‑win32.whl 的文件,因为它对我有用,然后使用命令
pip install c:\Users\........\GDAL‑3.0.4‑cp37‑cp37m‑win32.whl

成功安装GDAL,这是Geopandas的要求。

  1. 安装 GDAL 后,您需要使用link 安装 Fiona Wheel 文件。访问此链接后,下载名为 Fiona‑1.8.13‑cp37‑cp37m‑win32.whl 的文件,因为它是大多数 Windows 用户支持的滚轮文件。下载此文件后,使用命令
pip install c:\Users\........\Fiona‑1.8.13‑cp37‑cp37m‑win32.whl

注意:如果上述轮文件不适合您,请尝试使用备用轮文件。

【讨论】:

  • pip install e:\GDAL-3.0.4-cp36-cp36m-win32.whl 错误:GDAL-3.0.4-cp36-cp36m-win32.whl 不是此平台支持的滚轮。 (在 W10 x64 上):(
  • pip install e:\GDAL-3.2.2-cp39-cp39-win_amd64.whl 错误:GDAL-3.2.2-cp39-cp39-win_amd64.whl 不是该平台支持的轮子。 :( 在 W10 x64 上
  • @rheras 你试过其他版本吗?刚刚用这个方法为 Python 3.9 (Win10 x64) 安装了 3.3.1。
  • 有效!但我很好奇如何选择合适的包装?我知道win_amd64 是针对Windows 64 位系统的,但cp39 是指Python 3.9 版本吗?
【解决方案3】:

经过 6 个小时的疯狂尝试,终于安装了 Fiona。我会尽量让它变得简单。大部分指南都取自这里How to install GDAL

在此处下载所需的gdal文件:

1)https://www.lfd.uci.edu/~gohlke/pythonlibs/#gdal

2) 然后就可以安装wheel文件了:

python.exe -m pip install GDAL-2.2.4-cp35-cp35m-win_amd64.whl

3) 添加名为 GDAL_DATA 和 value = 的环境变量

C:\Users\yourUserName\AppData\Local\Programs\Python\Python38-32\Lib\site-packages\osgeo\data\gdal

4) 在大多数情况下,我们需要 Visual C++ 构建工具。仅安装构建工具并从官方链接启动或下载 c++ Visual Studio,链接到此处的快捷方式下载:

Visual C++ 2015 Build Tools

5) 现在从这里安装合适的 fiona 轮子here

然后运行:pip install C:/path/to/Fiona‑1.8.4‑cp37‑cp37m‑win32.whl

6) 运行 pip install fiona

【讨论】:

  • 谢谢,但我的 Windows10 x64 不接受它们:错误:Fiona-1.8.19-cp39-cp39-win32.whl 不是此平台上支持的滚轮。 ....等等所有:(
  • @rheras 你可能有错误的文件。检查您拥有的 python 版本并确保 cp 之后的数字与之匹配。而且您可能还需要 64 位版本。获得正确匹配的文件后,您将不会收到此错误。
【解决方案4】:

您可以使用 conda 来安装 fiona。这就是我所做的:

  1. 在 Anaconda Navigator 中创建虚拟环境并安装 GDAL 通过 GUI 进入这个环境。
  2. 使用pip install shapely 安装整齐
  3. conda install -c conda-forge fiona安装finona

这对我有用。

【讨论】:

    【解决方案5】:

    我使用 conda-forge 安装 Fiona,但如果这不适合您,请尝试使用 pipwin:

    pip 安装 pipwin

    pipwin 安装 fiona

    我还使用 pipwin install geopandas 和 pipwin install gdal 来导入这些库。

    【讨论】:

      猜你喜欢
      • 2016-02-03
      • 2020-02-17
      • 2017-08-09
      • 2016-05-20
      • 2017-10-08
      • 2017-04-13
      • 2018-01-08
      • 2020-05-08
      • 2018-11-26
      相关资源
      最近更新 更多