i am trying to install fiona package. i tried to install it via pip command and as a wheel, but either of them fails and i get the below posted error.
GDAL, shapely and psycopg2 are installed. please let me know how to install fiona on windows
error
M:\projects\python\wheels\fiona>pip install --target="M:\projects\python\flask apps\openRoutService\apps\app5\env\Lib\site-packages" Fiona-1.8.20-cp310-cp310-win_amd64.whl
Processing m:\projects\python\wheels\fiona\fiona-1.8.20-cp310-cp310-win_amd64.whl
Collecting six>=1.7
Using cached six-1.16.0-py2.py3-none-any.whl (11 kB)
Collecting gdal~=3.4.1
Using cached GDAL-3.4.1.tar.gz (755 kB)
Collecting click-plugins>=1.0
Using cached click_plugins-1.1.1-py2.py3-none-any.whl (7.5 kB)
Collecting attrs>=17
Using cached attrs-21.4.0-py2.py3-none-any.whl (60 kB)
Collecting click>=4.0
Using cached click-8.0.3-py3-none-any.whl (97 kB)
Collecting certifi
Using cached certifi-2021.10.8-py2.py3-none-any.whl (149 kB)
Collecting munch
Using cached munch-2.5.0-py2.py3-none-any.whl (10 kB)
Collecting setuptools
Using cached setuptools-60.9.2-py3-none-any.whl (1.1 MB)
Collecting cligj>=0.5
Using cached cligj-0.7.2-py3-none-any.whl (7.1 kB)
Collecting colorama
Using cached colorama-0.4.4-py2.py3-none-any.whl (16 kB)
Using legacy 'setup.py install' for gdal, since package 'wheel' is not installed.
Installing collected packages: colorama, six, click, setuptools, munch, gdal, cligj, click-plugins, certifi, attrs, Fiona
Running setup.py install for gdal ... error
ERROR: Command errored out with exit status 1:
command: 'C:\Python310\python.exe' -u -c 'import io, os, sys, setuptools, tokenize; sys.argv[0] = '"'"'C:\\Users\\xx\\AppData\\Local\\Temp\\pip-install-v2cmia2n\\gdal_18cd6fbde3384489bd2e11f4cb590c81\\setup.py'"'"'; __file__='"'"'C:\\Users\\xx\\AppData\\Local\\Temp\\pip-install-v2cmia2n\\gdal_18cd6fbde3384489bd2e11f4cb590c81\\setup.py'"'"';f = getattr(tokenize, '"'"'open'"'"', open)(__file__) if os.path.exists(__file__) else io.StringIO('"'"'from setuptools import setup; setup()'"'"');code = f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' install --record 'C:\Users\xx\AppData\Local\Temp\pip-record-i_y174eu\install-record.txt' --single-version-externally-managed --home 'C:\Users\xx\AppData\Local\Temp\pip-target-psp5q3qc' --compile --install-headers 'C:\Users\xx\AppData\Local\Temp\pip-target-psp5q3qc\include\python\gdal'
cwd: C:\Users\xx\AppData\Local\Temp\pip-install-v2cmia2n\gdal_18cd6fbde3384489bd2e11f4cb590c81\
Complete output (118 lines):
running install
running build
running build_py
creating build
creating build\lib.win-amd64-3.10
creating build\lib.win-amd64-3.10\osgeo
copying osgeo\gdal.py -> build\lib.win-amd64-3.10\osgeo
copying osgeo\gdalconst.py -> build\lib.win-amd64-3.10\osgeo
copying osgeo\gdalnumeric.py -> build\lib.win-amd64-3.10\osgeo
copying osgeo\gdal_array.py -> build\lib.win-amd64-3.10\osgeo
copying osgeo\gnm.py -> build\lib.win-amd64-3.10\osgeo
copying osgeo\ogr.py -> build\lib.win-amd64-3.10\osgeo
copying osgeo\osr.py -> build\lib.win-amd64-3.10\osgeo
copying osgeo\utils.py -> build\lib.win-amd64-3.10\osgeo
copying osgeo\__init__.py -> build\lib.win-amd64-3.10\osgeo
creating build\lib.win-amd64-3.10\osgeo_utils
copying gdal-utils\osgeo_utils\gdal2tiles.py -> build\lib.win-amd64-3.10\osgeo_utils
copying gdal-utils\osgeo_utils\gdal2xyz.py -> build\lib.win-amd64-3.10\osgeo_utils
copying gdal-utils\osgeo_utils\gdalattachpct.py -> build\lib.win-amd64-3.10\osgeo_utils
copying gdal-utils\osgeo_utils\gdalcompare.py -> build\lib.win-amd64-3.10\osgeo_utils
copying gdal-utils\osgeo_utils\gdalmove.py -> build\lib.win-amd64-3.10\osgeo_utils
copying gdal-utils\osgeo_utils\gdal_calc.py -> build\lib.win-amd64-3.10\osgeo_utils
copying gdal-utils\osgeo_utils\gdal_edit.py -> build\lib.win-amd64-3.10\osgeo_utils
copying gdal-utils\osgeo_utils\gdal_fillnodata.py -> build\lib.win-amd64-3.10\osgeo_utils
copying gdal-utils\osgeo_utils\gdal_merge.py -> build\lib.win-amd64-3.10\osgeo_utils
copying gdal-utils\osgeo_utils\gdal_pansharpen.py -> build\lib.win-amd64-3.10\osgeo_utils
copying gdal-utils\osgeo_utils\gdal_polygonize.py -> build\lib.win-amd64-3.10\osgeo_utils
copying gdal-utils\osgeo_utils\gdal_proximity.py -> build\lib.win-amd64-3.10\osgeo_utils
copying gdal-utils\osgeo_utils\gdal_retile.py -> build\lib.win-amd64-3.10\osgeo_utils
copying gdal-utils\osgeo_utils\gdal_sieve.py -> build\lib.win-amd64-3.10\osgeo_utils
copying gdal-utils\osgeo_utils\ogrmerge.py -> build\lib.win-amd64-3.10\osgeo_utils
copying gdal-utils\osgeo_utils\pct2rgb.py -> build\lib.win-amd64-3.10\osgeo_utils
copying gdal-utils\osgeo_utils\rgb2pct.py -> build\lib.win-amd64-3.10\osgeo_utils
copying gdal-utils\osgeo_utils\__init__.py -> build\lib.win-amd64-3.10\osgeo_utils
creating build\lib.win-amd64-3.10\osgeo_utils\auxiliary
copying gdal-utils\osgeo_utils\auxiliary\array_util.py -> build\lib.win-amd64-3.10\osgeo_utils\auxiliary
copying gdal-utils\osgeo_utils\auxiliary\base.py -> build\lib.win-amd64-3.10\osgeo_utils\auxiliary
copying gdal-utils\osgeo_utils\auxiliary\batch_creator.py -> build\lib.win-amd64-3.10\osgeo_utils\auxiliary
copying gdal-utils\osgeo_utils\auxiliary\color_palette.py -> build\lib.win-amd64-3.10\osgeo_utils\auxiliary
copying gdal-utils\osgeo_utils\auxiliary\color_table.py -> build\lib.win-amd64-3.10\osgeo_utils\auxiliary
copying gdal-utils\osgeo_utils\auxiliary\extent_util.py -> build\lib.win-amd64-3.10\osgeo_utils\auxiliary
copying gdal-utils\osgeo_utils\auxiliary\gdal_argparse.py -> build\lib.win-amd64-3.10\osgeo_utils\auxiliary
copying gdal-utils\osgeo_utils\auxiliary\numpy_util.py -> build\lib.win-amd64-3.10\osgeo_utils\auxiliary
copying gdal-utils\osgeo_utils\auxiliary\osr_util.py -> build\lib.win-amd64-3.10\osgeo_utils\auxiliary
copying gdal-utils\osgeo_utils\auxiliary\progress.py -> build\lib.win-amd64-3.10\osgeo_utils\auxiliary
copying gdal-utils\osgeo_utils\auxiliary\raster_creation.py -> build\lib.win-amd64-3.10\osgeo_utils\auxiliary
copying gdal-utils\osgeo_utils\auxiliary\rectangle.py -> build\lib.win-amd64-3.10\osgeo_utils\auxiliary
copying gdal-utils\osgeo_utils\auxiliary\util.py -> build\lib.win-amd64-3.10\osgeo_utils\auxiliary
copying gdal-utils\osgeo_utils\auxiliary\__init__.py -> build\lib.win-amd64-3.10\osgeo_utils\auxiliary
creating build\lib.win-amd64-3.10\osgeo_utils\samples
copying gdal-utils\osgeo_utils\samples\assemblepoly.py -> build\lib.win-amd64-3.10\osgeo_utils\samples
copying gdal-utils\osgeo_utils\samples\build_jp2_from_xml.py -> build\lib.win-amd64-3.10\osgeo_utils\samples
copying gdal-utils\osgeo_utils\samples\classify.py -> build\lib.win-amd64-3.10\osgeo_utils\samples
copying gdal-utils\osgeo_utils\samples\crs2crs2grid.py -> build\lib.win-amd64-3.10\osgeo_utils\samples
copying gdal-utils\osgeo_utils\samples\densify.py -> build\lib.win-amd64-3.10\osgeo_utils\samples
copying gdal-utils\osgeo_utils\samples\dump_jp2.py -> build\lib.win-amd64-3.10\osgeo_utils\samples
copying gdal-utils\osgeo_utils\samples\epsg_tr.py -> build\lib.win-amd64-3.10\osgeo_utils\samples
copying gdal-utils\osgeo_utils\samples\esri2wkt.py -> build\lib.win-amd64-3.10\osgeo_utils\samples
copying gdal-utils\osgeo_utils\samples\fft.py -> build\lib.win-amd64-3.10\osgeo_utils\samples
copying gdal-utils\osgeo_utils\samples\fix_gpkg.py -> build\lib.win-amd64-3.10\osgeo_utils\samples
copying gdal-utils\osgeo_utils\samples\gcps2ogr.py -> build\lib.win-amd64-3.10\osgeo_utils\samples
copying gdal-utils\osgeo_utils\samples\gcps2vec.py -> build\lib.win-amd64-3.10\osgeo_utils\samples
copying gdal-utils\osgeo_utils\samples\gcps2wld.py -> build\lib.win-amd64-3.10\osgeo_utils\samples
copying gdal-utils\osgeo_utils\samples\gdal2grd.py -> build\lib.win-amd64-3.10\osgeo_utils\samples
copying gdal-utils\osgeo_utils\samples\gdalchksum.py -> build\lib.win-amd64-3.10\osgeo_utils\samples
copying gdal-utils\osgeo_utils\samples\gdalcopyproj.py -> build\lib.win-amd64-3.10\osgeo_utils\samples
copying gdal-utils\osgeo_utils\samples\gdalfilter.py -> build\lib.win-amd64-3.10\osgeo_utils\samples
copying gdal-utils\osgeo_utils\samples\gdalident.py -> build\lib.win-amd64-3.10\osgeo_utils\samples
copying gdal-utils\osgeo_utils\samples\gdalimport.py -> build\lib.win-amd64-3.10\osgeo_utils\samples
copying gdal-utils\osgeo_utils\samples\gdalinfo.py -> build\lib.win-amd64-3.10\osgeo_utils\samples
copying gdal-utils\osgeo_utils\samples\gdallocationinfo.py -> build\lib.win-amd64-3.10\osgeo_utils\samples
copying gdal-utils\osgeo_utils\samples\gdal_auth.py -> build\lib.win-amd64-3.10\osgeo_utils\samples
copying gdal-utils\osgeo_utils\samples\gdal_cp.py -> build\lib.win-amd64-3.10\osgeo_utils\samples
copying gdal-utils\osgeo_utils\samples\gdal_create_pdf.py -> build\lib.win-amd64-3.10\osgeo_utils\samples
copying gdal-utils\osgeo_utils\samples\gdal_ls.py -> build\lib.win-amd64-3.10\osgeo_utils\samples
copying gdal-utils\osgeo_utils\samples\gdal_lut.py -> build\lib.win-amd64-3.10\osgeo_utils\samples
copying gdal-utils\osgeo_utils\samples\gdal_mkdir.py -> build\lib.win-amd64-3.10\osgeo_utils\samples
copying gdal-utils\osgeo_utils\samples\gdal_remove_towgs84.py -> build\lib.win-amd64-3.10\osgeo_utils\samples
copying gdal-utils\osgeo_utils\samples\gdal_rm.py -> build\lib.win-amd64-3.10\osgeo_utils\samples
copying gdal-utils\osgeo_utils\samples\gdal_rmdir.py -> build\lib.win-amd64-3.10\osgeo_utils\samples
copying gdal-utils\osgeo_utils\samples\gdal_vrtmerge.py -> build\lib.win-amd64-3.10\osgeo_utils\samples
copying gdal-utils\osgeo_utils\samples\gdal_zip.py -> build\lib.win-amd64-3.10\osgeo_utils\samples
copying gdal-utils\osgeo_utils\samples\get_soundg.py -> build\lib.win-amd64-3.10\osgeo_utils\samples
copying gdal-utils\osgeo_utils\samples\histrep.py -> build\lib.win-amd64-3.10\osgeo_utils\samples
copying gdal-utils\osgeo_utils\samples\hsv_merge.py -> build\lib.win-amd64-3.10\osgeo_utils\samples
copying gdal-utils\osgeo_utils\samples\jpeg_in_tiff_extract.py -> build\lib.win-amd64-3.10\osgeo_utils\samples
copying gdal-utils\osgeo_utils\samples\load2odbc.py -> build\lib.win-amd64-3.10\osgeo_utils\samples
copying gdal-utils\osgeo_utils\samples\loslas2ntv2.py -> build\lib.win-amd64-3.10\osgeo_utils\samples
copying gdal-utils\osgeo_utils\samples\magphase.py -> build\lib.win-amd64-3.10\osgeo_utils\samples
copying gdal-utils\osgeo_utils\samples\make_fuzzer_friendly_archive.py -> build\lib.win-amd64-3.10\osgeo_utils\samples
copying gdal-utils\osgeo_utils\samples\mkgraticule.py -> build\lib.win-amd64-3.10\osgeo_utils\samples
copying gdal-utils\osgeo_utils\samples\ogr2ogr.py -> build\lib.win-amd64-3.10\osgeo_utils\samples
copying gdal-utils\osgeo_utils\samples\ogr2vrt.py -> build\lib.win-amd64-3.10\osgeo_utils\samples
copying gdal-utils\osgeo_utils\samples\ogrinfo.py -> build\lib.win-amd64-3.10\osgeo_utils\samples
copying gdal-utils\osgeo_utils\samples\ogrupdate.py -> build\lib.win-amd64-3.10\osgeo_utils\samples
copying gdal-utils\osgeo_utils\samples\ogr_build_junction_table.py -> build\lib.win-amd64-3.10\osgeo_utils\samples
copying gdal-utils\osgeo_utils\samples\ogr_dispatch.py -> build\lib.win-amd64-3.10\osgeo_utils\samples
copying gdal-utils\osgeo_utils\samples\ogr_layer_algebra.py -> build\lib.win-amd64-3.10\osgeo_utils\samples
copying gdal-utils\osgeo_utils\samples\rel.py -> build\lib.win-amd64-3.10\osgeo_utils\samples
copying gdal-utils\osgeo_utils\samples\tigerpoly.py -> build\lib.win-amd64-3.10\osgeo_utils\samples
copying gdal-utils\osgeo_utils\samples\tile_extent_from_raster.py -> build\lib.win-amd64-3.10\osgeo_utils\samples
copying gdal-utils\osgeo_utils\samples\tolatlong.py -> build\lib.win-amd64-3.10\osgeo_utils\samples
copying gdal-utils\osgeo_utils\samples\validate_cloud_optimized_geotiff.py -> build\lib.win-amd64-3.10\osgeo_utils\samples
copying gdal-utils\osgeo_utils\samples\validate_gpkg.py -> build\lib.win-amd64-3.10\osgeo_utils\samples
copying gdal-utils\osgeo_utils\samples\validate_jp2.py -> build\lib.win-amd64-3.10\osgeo_utils\samples
copying gdal-utils\osgeo_utils\samples\val_repl.py -> build\lib.win-amd64-3.10\osgeo_utils\samples
copying gdal-utils\osgeo_utils\samples\vec_tr.py -> build\lib.win-amd64-3.10\osgeo_utils\samples
copying gdal-utils\osgeo_utils\samples\vec_tr_spat.py -> build\lib.win-amd64-3.10\osgeo_utils\samples
copying gdal-utils\osgeo_utils\samples\wcs_virtds_params.py -> build\lib.win-amd64-3.10\osgeo_utils\samples
copying gdal-utils\osgeo_utils\samples\__init__.py -> build\lib.win-amd64-3.10\osgeo_utils\samples
running build_ext
building 'osgeo._gdal' extension
building 'osgeo._ogr' extension
building 'osgeo._osr' extension
building 'osgeo._gnm' extension
building 'osgeo._gdalconst' extension
building 'osgeo._gdal_array' extension
error: Microsoft Visual C++ 14.0 or greater is required. Get it with "Microsoft C++ Build Tools": https://visualstudio.microsoft.com/visual-cpp-build-tools/
----------------------------------------