Can't install Fiona on Windows

I've done a software on Ubuntu, and I'm having several problems running this software on Windows.

My biggest issue point now is that I'm trying to install "fiona" - I have it already installed on my PIP packages - but for some reason it's not working.

So I've tried to install it via setup download from the original repository.

By following the rules: using python setup.py install

I've already added some environment variables as:

GDAL_DATA GDAL_DRIVER_PATH 

and beyond that I've added on variable PATH the path of GDAL

There's another way to do it, by using another command but I don't how would it be

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

My current version of GDAL is GDAL 1.11.4, released 2016/01/25

I'd already tried with 2.3 etc. and it didn't work.

I've tried using only this command:

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

Which results when I try to use a software that has fiona, I receive the following error:

    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

Solution 1:

When building from source on Windows, it is important to know that setup.py cannot rely on gdal-config, which is only present on UNIX systems. On Windows, these paths need to be provided by the user. You will need to find the include files and the library files for gdal and use setup.py

The GDAL DLL files and gdal-data directory need to be in your Windows PATH otherwise building Fiona will fail to work.

Follow below steps to install Fiona and geopandas on windows

Step 1: Download the Fiona wheel from this website. please pick the .whl package that correlates with your python interpreter as well system build (i.e. 32 bit or 64 bit)

Step 2: Install fiona by using pip install path/to/fiona.whl

Step 3: Install geopandas by using 'pip install geopandas'

Solution 2:

To install Fiona on windows, you need to follow the below-mentioned steps: -

  1. You need to install GDAL wheel file using the link . After visiting this link, download this file named GDAL‑3.0.4‑cp37‑cp37m‑win32.whl since it worked for me and then use the command
pip install c:\Users\........\GDAL‑3.0.4‑cp37‑cp37m‑win32.whl

to successfully install GDAL which is the requirement of Geopandas.

  1. After installing the GDAL, you need to install a Fiona wheel file using the link. Upon visiting this link, download the file named Fiona‑1.8.13‑cp37‑cp37m‑win32.whl since it is the supported wheel file for most of the windows users. After downloading this file, use the command
pip install c:\Users\........\Fiona‑1.8.13‑cp37‑cp37m‑win32.whl

NOTE: If the above-mentioned wheel file doesn't work for you, then try using alternate wheel files.

Solution 3:

Finally after 6 hours of trying like crazy for installing Fiona. I will try to make it as simple as possible. Most of the guide are taken from here How to install GDAL

Download the required gdal file here:

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

2) Then you can install the wheel file:

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

3) Add Environment Variable with the name GDAL_DATA and value =

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

4) In most cases we require Visual C++ build tools. Install only the build tools and launch or download c++ visual studio from official link, Link to shortcut download from here:

Visual C++ 2015 Build Tools

5) Now install suitable fiona wheel from here here

and run: pip install C:/path/to/Fiona‑1.8.4‑cp37‑cp37m‑win32.whl

6) run pip install fiona

Solution 4:

You can use conda to install fiona. This is what I did:

  1. Make a virtual environment in Anaconda Navigator and install GDAL into this environement through the GUI.
  2. Install shapely with pip install shapely
  3. install finona with conda install -c conda-forge fiona

This worked for me.