执行conda env create遇ResolvePackageNotFound错误求助
解决Conda环境创建时
ResolvePackageNotFound的跨平台依赖问题 看起来你遇到的核心问题是跨平台包版本不兼容——从终端提示符里的*-MBP能看出你用的是Mac系统,但tfdl_env.yml里列出的包全是带vc14_*后缀的Windows平台专属版本,conda自然找不到匹配的包!更新conda没用是因为问题出在配置文件本身,不是conda版本。给你几个实用的解决步骤:
1. 修正YML文件的平台依赖标记
打开你的tfdl_env.yml,做这两个关键修改:
- 去掉所有
=vc14_*、=win_*这类平台专属后缀,比如把libpng==1.6.30=vc14_1改成libpng==1.6.30,让conda自动匹配当前Mac平台的合适版本 - 直接删除
wincertstore和win_unicode_console这两个包——它们是Windows系统独有的工具,Mac完全不需要
修改后的包列表示例:
dependencies: - libpng==1.6.30 - six==1.10.0 - tk==8.5.18 - openssl==1.0.2l - icu==57.1 - zlib==1.2.11 - jpeg==9b - qt==5.6.2 - python=3.5
2. 添加conda-forge通道扩大包源
如果修改后还是有包找不到,在yml文件顶部添加conda-forge通道(这个源的包覆盖范围更广,很多旧版本也能找到):
channels: - defaults - conda-forge dependencies: # 上面修改后的包列表
然后重新运行创建命令:
conda env create -f tfdl_env.yml
3. 手动创建环境并逐个安装包(兜底方案)
如果上面的方法都不行,那就先创建空环境,再手动安装所需包(跳过Windows专属包):
# 创建指定Python3.5的空环境(和原yml的Python版本保持一致) conda create -n tfdl_env python=3.5 # 激活环境 conda activate tfdl_env # 批量安装所需包(跳过wincertstore和win_unicode_console) conda install libpng=1.6.30 six=1.10.0 tk=8.5.18 openssl=1.0.2l icu=57.1 zlib=1.2.11 jpeg=9b qt=5.6.2
这样操作后,应该就能成功创建适配Mac的环境了。
内容的提问来源于stack exchange,提问作者singhcpt
相关产品推荐
相关产品推荐

