You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Conda环境导入Fiona遇DLL加载失败,需兼容GDAL求解

Conda环境下Fiona导入失败(DLL加载错误)及GDAL兼容解决方案

问题情况

在Conda环境中导入Fiona或执行fio命令时,持续出现DLL加载失败错误,但通过virtualenv创建环境并使用pip安装Fiona后可正常运行。由于后续需同时使用仅能通过conda install -c conda-forge gdal安装的GDAL,需找到Conda环境下同时兼容两者的解决办法。

报错详情

导入Fiona时的错误回溯:

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.

测试验证

Conda环境测试(报错复现)

新建Conda环境并安装Fiona后,导入失败:

Nick@w11-virt-nh MINGW64 ~/Desktop/scratch
$ conda create -n fionatest python fiona
...(省略安装过程)
>>> 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.
>>>

virtualenv环境测试(正常运行)

通过virtualenv创建环境并pip安装Fiona后,可正常导入:

Nick@w11-virt-nh MINGW64 ~/Desktop/scratch/
$ source test_venv/Scripts/activate
...
>>> import fiona
>>> fiona.__version__
'1.9.5'
>>>

解决办法

  • 统一从conda-forge安装所有依赖
    新建Conda环境时,指定conda-forge频道安装Fiona和GDAL,避免跨频道依赖冲突:

    conda create -n gdal-fiona-env -c conda-forge python gdal fiona
    

    激活环境后直接测试导入,该方式能保证GDAL与Fiona的依赖版本完全匹配,避免DLL不兼容问题。

  • Conda环境中用pip安装适配版Fiona

    1. 先通过conda-forge安装GDAL:
      conda create -n gdal-pip-fiona -c conda-forge python gdal
      conda activate gdal-pip-fiona
      
    2. Windows环境下设置环境变量,让pip识别GDAL的头文件与库文件:
      set GDAL_INCLUDE_DIR=%CONDA_PREFIX%\Library\include
      set GDAL_LIBRARY=%CONDA_PREFIX%\Library\lib\gdal_i.lib
      
    3. 用pip安装Fiona,此时pip会基于当前Conda环境的GDAL版本编译适配的Fiona:
      pip install fiona
      
  • 清理环境冲突包
    检查当前Conda环境中GDAL/Fiona的安装来源,避免跨频道包冲突:

    conda list --show-channel-urls
    

    若存在非conda-forge渠道的GDAL/Fiona,先卸载再重新从conda-forge安装:

    conda remove gdal fiona
    conda install -c conda-forge gdal fiona
    

内容的提问来源于stack exchange,提问作者hadallen

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.08 21:53:13