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

导入scikit-image遇GLIBCXX ImportError:问题在skimage/Anaconda/Ubuntu?

解决scikit-image导入flood_fill时的GLIBCXX_3.4.30找不到问题

问题根源

Miniconda虚拟环境会自带一套独立的依赖库(包括libstdc++.so.6),即使系统中存在更高版本的GLIBCXX_3.4.30,环境内的旧版本库会优先加载,导致scipy依赖的版本无法被识别。

解决方案

  • 检查虚拟环境内的libstdc++版本
    先确认虚拟环境自带的libstdc++.so.6是否包含所需版本:

    strings $CONDA_PREFIX/lib/libstdc++.so.6 | grep GLIBCXX
    

    如果输出中没有GLIBCXX_3.4.30,说明环境内的库版本过低。

  • 升级虚拟环境的libstdc++库
    使用mamba安装conda-forge提供的新版libstdcxx-ng包,替换环境内的旧库:

    mamba install -c conda-forge libstdcxx-ng
    

    这个包专门适配conda环境,能解决C++标准库版本不匹配的问题。

  • 重新安装相关依赖包
    若升级库后仍有问题,重新安装scipy和scikit-image确保依赖完整:

    mamba reinstall scipy scikit-image
    

    确保所有包都从conda-forge源拉取,避免混合不同源的依赖导致冲突。

  • 临时强制使用系统库(备选方案)
    如果上述方法无效,可以临时设置环境变量让Python优先加载系统的libstdc++.so.6:

    export LD_PRELOAD=/usr/lib/x86_64-linux-gnu/libstdc++.so.6
    

    执行完这条命令后再运行你的Python脚本即可,但这只是临时修复,长期来看还是建议用conda包解决版本问题。

  • 确保conda-forge源优先级
    检查并设置conda-forge为最高优先级源,避免从默认源拉取旧版本依赖:

    # 查看当前源配置
    conda config --show-sources
    # 设置严格的源优先级
    conda config --set channel_priority strict
    

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.25 22:36:29