I have looked for information online but cannot find anything relevant to this specific issue.
When importing fiona while using a conda environment, I get the following stacktrace:
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "C:\Users\Nick\anaconda3\envs\general\Lib\site-packages\fiona\__init__.py", line 41, in <module>
from fiona._env import (
ImportError: DLL load failed while importing _env: The specified procedure could not be found.
similarly, when I run fio in a terminal I get this message:
Traceback (most recent call last):
File "C:\Users\Nick\anaconda3\envs\general\Scripts\fio-script.py", line 6, in <module>
from fiona.fio.main import main_group
File "C:\Users\Nick\anaconda3\envs\general\Lib\site-packages\fiona\__init__.py", line 41, in <module>
from fiona._env import (
ImportError: DLL load failed while importing _env: The specified procedure could not be found.
I can however successfully import fiona if I use a fresh virtualenv venv that I made to test. This works for now for the script I'm working on, but it not a permanent solution as I cannot get gdal to work via installation from pip, I have only been able to get it working by using conda install -c conda-forge gdal
. I know eventually I will need to use both gdal and fiona in the same script so I am looking for a solution before that happens.
Below is the process used to create a new conda environment and install python and fiona, then trying to import fiona using that env.
Nick@w11-virt-nh MINGW64 ~/Desktop/scratch
$ conda create -n fionatest python fiona
Collecting package metadata (current_repodata.json): done
Solving environment: done
## Package Plan ##
environment location: C:\Users\Nick\anaconda3\envs\fionatest
added / updated specs:
- fiona
- python
The following NEW packages will be INSTALLED:
attrs conda-forge/noarch::attrs-23.1.0-pyh71513ae_1
blosc conda-forge/win-64::blosc-1.21.5-hdccc3a2_0
bzip2 conda-forge/win-64::bzip2-1.0.8-h8ffe710_4
ca-certificates conda-forge/win-64::ca-certificates-2023.7.22-h56e8100_0
cairo conda-forge/win-64::cairo-1.18.0-h1fef639_0
cfitsio conda-forge/win-64::cfitsio-4.3.0-h9b0cee5_0
click conda-forge/noarch::click-8.1.7-win_pyh7428d3b_0
click-plugins conda-forge/noarch::click-plugins-1.1.1-py_0
cligj conda-forge/noarch::cligj-0.7.2-pyhd8ed1ab_1
colorama conda-forge/noarch::colorama-0.4.6-pyhd8ed1ab_0
expat conda-forge/win-64::expat-2.5.0-h63175ca_1
fiona conda-forge/win-64::fiona-1.9.5-py312he9aeaab_0
font-ttf-dejavu-s~ conda-forge/noarch::font-ttf-dejavu-sans-mono-2.37-hab24e00_0
font-ttf-inconsol~ conda-forge/noarch::font-ttf-inconsolata-3.000-h77eed37_0
font-ttf-source-c~ conda-forge/noarch::font-ttf-source-code-pro-2.038-h77eed37_0
font-ttf-ubuntu conda-forge/noarch::font-ttf-ubuntu-0.83-hab24e00_0
fontconfig conda-forge/win-64::fontconfig-2.14.2-hbde0cde_0
fonts-conda-ecosy~ conda-forge/noarch::fonts-conda-ecosystem-1-0
fonts-conda-forge conda-forge/noarch::fonts-conda-forge-1-0
freetype conda-forge/win-64::freetype-2.12.1-hdaf720e_2
freexl conda-forge/win-64::freexl-2.0.0-h8276f4a_0
gdal conda-forge/win-64::gdal-3.7.2-py312hb5f3cee_7
geos conda-forge/win-64::geos-3.12.0-h1537add_0
geotiff conda-forge/win-64::geotiff-1.7.1-hcf4a93f_14
gettext conda-forge/win-64::gettext-0.21.1-h5728263_0
hdf4 conda-forge/win-64::hdf4-4.2.15-h5557f11_7
hdf5 conda-forge/win-64::hdf5-1.14.2-nompi_h73e8ff5_100
icu conda-forge/win-64::icu-73.2-h63175ca_0
importlib-metadata conda-forge/noarch::importlib-metadata-6.8.0-pyha770c72_0
intel-openmp conda-forge/win-64::intel-openmp-2023.2.0-h57928b3_50496
kealib conda-forge/win-64::kealib-1.5.2-ha10e780_1
krb5 conda-forge/win-64::krb5-1.21.2-heb0366b_0
lcms2 conda-forge/win-64::lcms2-2.15-h67d730c_3
lerc conda-forge/win-64::lerc-4.0.0-h63175ca_0
libaec conda-forge/win-64::libaec-1.1.2-h63175ca_1
libarchive conda-forge/win-64::libarchive-3.7.2-h6f8411a_0
libblas conda-forge/win-64::libblas-3.9.0-18_win64_mkl
libboost-headers conda-forge/win-64::libboost-headers-1.82.0-h57928b3_6
libcblas conda-forge/win-64::libcblas-3.9.0-18_win64_mkl
libcurl conda-forge/win-64::libcurl-8.4.0-hd5e4a3a_0
libdeflate conda-forge/win-64::libdeflate-1.19-hcfcfb64_0
libexpat conda-forge/win-64::libexpat-2.5.0-h63175ca_1
libffi conda-forge/win-64::libffi-3.4.2-h8ffe710_5
libgdal conda-forge/win-64::libgdal-3.7.2-h3217549_7
libglib conda-forge/win-64::libglib-2.78.0-he8f3873_0
libhwloc conda-forge/win-64::libhwloc-2.9.3-default_haede6df_1009
libiconv conda-forge/win-64::libiconv-1.17-h8ffe710_0
libjpeg-turbo conda-forge/win-64::libjpeg-turbo-3.0.0-hcfcfb64_1
libkml conda-forge/win-64::libkml-1.3.0-haf3e7a6_1018
liblapack conda-forge/win-64::liblapack-3.9.0-18_win64_mkl
libnetcdf conda-forge/win-64::libnetcdf-4.9.2-nompi_h8284064_112
libpng conda-forge/win-64::libpng-1.6.39-h19919ed_0
libpq conda-forge/win-64::libpq-16.0-h43585b0_1
librttopo conda-forge/win-64::librttopo-1.1.0-h92c5fdb_14
libspatialite conda-forge/win-64::libspatialite-5.1.0-hbf340bc_0
libsqlite conda-forge/win-64::libsqlite-3.43.2-hcfcfb64_0
libssh2 conda-forge/win-64::libssh2-1.11.0-h7dfc565_0
libtiff conda-forge/win-64::libtiff-4.6.0-h6e2ebb7_2
libwebp-base conda-forge/win-64::libwebp-base-1.3.2-hcfcfb64_0
libxml2 conda-forge/win-64::libxml2-2.11.5-hc3477c8_1
libzip conda-forge/win-64::libzip-1.10.1-h1d365fa_3
libzlib conda-forge/win-64::libzlib-1.2.13-hcfcfb64_5
lz4-c conda-forge/win-64::lz4-c-1.9.4-hcfcfb64_0
lzo conda-forge/win-64::lzo-2.10-he774522_1000
minizip conda-forge/win-64::minizip-4.0.1-h5bed578_5
mkl conda-forge/win-64::mkl-2022.1.0-h6a75c08_874
munch conda-forge/noarch::munch-4.0.0-pyhd8ed1ab_0
numpy conda-forge/win-64::numpy-1.26.0-py312h8753938_0
openjpeg conda-forge/win-64::openjpeg-2.5.0-h3d672ee_3
openssl conda-forge/win-64::openssl-3.1.3-hcfcfb64_0
pcre2 conda-forge/win-64::pcre2-10.40-h17e33f8_0
pip conda-forge/noarch::pip-23.2.1-pyhd8ed1ab_0
pixman conda-forge/win-64::pixman-0.42.2-h63175ca_0
poppler conda-forge/win-64::poppler-23.10.0-hc2f3c52_0
poppler-data conda-forge/noarch::poppler-data-0.4.12-hd8ed1ab_0
postgresql conda-forge/win-64::postgresql-16.0-hc80876b_1
proj conda-forge/win-64::proj-9.3.0-he13c7e8_1
pthreads-win32 conda-forge/win-64::pthreads-win32-2.9.1-hfa6e2cd_3
python conda-forge/win-64::python-3.12.0-h2628c8c_0_cpython
python_abi conda-forge/win-64::python_abi-3.12-4_cp312
setuptools conda-forge/noarch::setuptools-68.2.2-pyhd8ed1ab_0
shapely conda-forge/win-64::shapely-2.0.2-py312h92c3dd1_0
six conda-forge/noarch::six-1.16.0-pyh6c4a22f_0
snappy conda-forge/win-64::snappy-1.1.10-hfb803bf_0
sqlite conda-forge/win-64::sqlite-3.43.2-hcfcfb64_0
tbb conda-forge/win-64::tbb-2021.10.0-h91493d7_1
tiledb conda-forge/win-64::tiledb-2.16.3-h1ffc264_3
tk conda-forge/win-64::tk-8.6.13-hcfcfb64_0
tzdata conda-forge/noarch::tzdata-2023c-h71feb2d_0
ucrt conda-forge/win-64::ucrt-10.0.22621.0-h57928b3_0
uriparser conda-forge/win-64::uriparser-0.9.7-h1537add_1
vc conda-forge/win-64::vc-14.3-h64f974e_17
vc14_runtime conda-forge/win-64::vc14_runtime-14.36.32532-hdcecf7f_17
vs2015_runtime conda-forge/win-64::vs2015_runtime-14.36.32532-h05e6639_17
wheel conda-forge/noarch::wheel-0.41.2-pyhd8ed1ab_0
xerces-c conda-forge/win-64::xerces-c-3.2.4-h63175ca_3
xz conda-forge/win-64::xz-5.2.6-h8d14728_0
zipp conda-forge/noarch::zipp-3.17.0-pyhd8ed1ab_0
zlib conda-forge/win-64::zlib-1.2.13-hcfcfb64_5
zstd conda-forge/win-64::zstd-1.5.5-h12be248_0
Proceed ([y]/n)?
Downloading and Extracting Packages:
Preparing transaction: done
Verifying transaction: done
Executing transaction: done
#
# To activate this environment, use
#
# $ conda activate fionatest
#
# To deactivate an active environment, use
#
# $ conda deactivate
(testing)
Nick@w11-virt-nh MINGW64 ~/Desktop/scratch
$ conda activate fionatest
(fionatest)
Nick@w11-virt-nh MINGW64 ~/Desktop/scratch
$ python
Python 3.12.0 | packaged by conda-forge | (main, Oct 3 2023, 08:26:13) [MSC v.1935 64 bit (AMD64)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>> import fiona
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "C:\Users\Nick\anaconda3\envs\fionatest\Lib\site-packages\fiona\__init__.py", line 41, in <module>
from fiona._env import (
ImportError: DLL load failed while importing _env: The specified procedure could not be found.
>>>
Below is trying the same with my test_venv (made with the virtualenv module, fiona install with pip) and displaying the version:
Nick@w11-virt-nh MINGW64 ~/Desktop/scratch/
$ source test_venv/Scripts/activate
(test_venv)
Nick@w11-virt-nh MINGW64 ~/Desktop/scratch/
$ python
Python 3.11.6 | packaged by conda-forge | (main, Oct 3 2023, 10:29:11) [MSC v.1935 64 bit (AMD64)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>> import fiona
>>> fiona.__version__
'1.9.5'
>>>
Although this did solve my issue, if someone has a more knowledgeable answer or knows why this occurred, I would still love to hear it!
After writing my question, I reread it and noticed that I said: "made with the virtualenv module, fiona install with pip"...
This lead me to attempt to remove fiona via conda, install it via pip, and then reinstall gdal with conda again. This seems to solve my issue, as I can not import both fiona
and gdal
, and also use fio.exe
conda uninstall fiona
pip install fiona
conda install -c conda-forge gdal
(fionatest)
Nick@w11-virt-nh MINGW64 ~/Desktop/scratch
$ python
Python 3.12.0 | packaged by conda-forge | (main, Oct 3 2023, 08:26:13) [MSC v.1935 64 bit (AMD64)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>> import fiona
>>> from osgeo import gdal
>>> fiona.__version__
'1.9.5'
>>> gdal.__version__
'3.7.2'
>>>