Conda创建新环境卡在Executing transaction、gdk-pixbuf安装失败求助
Conda创建新环境卡在"Executing transaction"问题
我使用MacOS BigSur 11.6系统,已先执行如下命令更新conda和mamba:
conda update --all conda update mamba
随后参考软件安装指南尝试创建新环境,先后执行以下命令:
conda create -n fermi -c conda-forge -c fermi fermitools python=3 clhep=2.4.4.1
也尝试过安装开发版本:
conda create -n fermi-2.0.24 -c conda-forge -c fermi/label/dev fermitools=2.0.24
还使用mamba执行创建命令:
mamba create -n fermi -c conda-forge -c fermi fermitools python=3 clhep=2.4.4.1
所有尝试均卡在"executing transaction"步骤超过1小时,按下ctrl+c终止后均返回相同报错:
"ERROR conda.core.link:_execute(699): An error occurred while installing package 'conda-forge::gdk-pixbuf-2.42.6-h2e6141f_0'."
"Rolling back transaction: done"
我的系统相关信息如下:
uname -v输出:Darwin Kernel Version 20.6.0: Mon Aug 30 06:12:21 PDT 2021; root:xnu-7195.141.6~3/RELEASE_X86_64conda --version输出:conda 4.10.3
我查询到conda官方仓库长期存在同类问题讨论,有用户反馈卡住时按回车键可解决,但该方法对我无效,目前尚未找到明确解决方案,请问该如何处理该问题?
解决方案
该问题由gdk-pixbuf 2.42.6版本的post-link安装脚本在MacOS x86_64环境下触发隐形交互校验、或脚本本身执行死锁导致,可按以下步骤依次尝试解决:
- 关闭conda交互提示
提前设置环境变量禁用所有安装过程中的用户确认操作,避免隐形弹窗/提示卡住流程:
export CONDA_ALWAYS_YES=true export CONDA_NON_INTERACTIVE=1
重新执行环境创建命令即可。
- 跳过故障包的安装脚本
如果第一步无效,先执行dry run确认依赖解析正常:
conda create -n fermi -c conda-forge -c fermi fermitools python=3 clhep=2.4.4.1 --dry-run
确认无依赖冲突后,添加--no-scripts参数跳过所有包的post-link脚本执行:
conda create -n fermi -c conda-forge -c fermi fermitools python=3 clhep=2.4.4.1 --no-scripts
环境创建完成后激活环境,单独强制重装gdk-pixbuf:
conda activate fermi conda install --force-reinstall gdk-pixbuf
- 指定低版本gdk-pixbuf安装
直接在创建环境时指定无故障的低版本gdk-pixbuf,规避2.42.6版本的问题:
conda create -n fermi -c conda-forge -c fermi fermitools python=3 clhep=2.4.4.1 gdk-pixbuf=2.42.5
- 清理缓存重试
如果以上操作都失败,先清理所有本地conda缓存,避免损坏的本地安装包导致故障:
conda clean -a -y
之后重新执行创建命令即可。
内容的提问来源于stack exchange,提问作者Diving
相关产品推荐
相关产品推荐

