【错误解决】不同操作系统间conda环境迁移出现ResolvePackageNotFound错误

一、报错

  • 在windows系统向Linux系统迁移conda环境的过程中执行生成的.yaml文件时出错,
    • 执行命令是:conda env create -f py37.yaml
Collecting package meatadata (repodata.json): done
Solving environment: failed

ResolvePackageNotFound:
  - qt=5.12.5=h7ef1ec2_0
  - setuptools=46.4.0=py37hc8dfbb8_0
  - six=1.15.0=pyh9f0ad1d_0
  - sqlite=3.30.1=hfa6e2cd_0
  - tk=8.6.10=hfa6e2cd_0
  - tornado=6.0.4=py37hfa6e2cd_0
  - vc=14.1=h869be7e_1
  - vs2015_runtime=14.16.27012=h30e32a0_2
  - wheel=0.34.2=py_1
  - wincertstore=0.2=py37_1003
  - xz=5.2.5=h2fa13f4_0
  - zlib=1.2.11=h2fa13f4_1006
  - zstd=1.4.4=h9f78265_3
  - pytorch=1.2.0=py3.7_cuda100_cudnn7_1
  - torchvision=0.2.1=py_2

二、原因

  • 错误分析:由于环境配置文件是从windows系统中导出的,因此*.yaml配置文件里面的环境依赖包的具体版本信息完全是按照windows机器上的具体硬件或者软件进行配置的。
    • 即,上述报错信息中每个依赖包中的第二个等号以及后面的及其配置信息。
  • 而当我们更换一个不同的操作系统之后,执行 conda env create -f *.yaml环境迁移命令后,目标机器会按照yaml文件中的信息进行依赖包的查询,因此导致了“ResolvePackageNotFound”,即解析包未找到的错误。

三、解决方案

  • 明白了出错的原因后,我们可以对症下药。
  • 直接将yaml文件中第二个等号以及等号后面的配置信息删除即可~
  • 具体如下:
  - qt=5.12.5
  - setuptools=46.4.0
  - six=1.15.0
  - sqlite=3.30.1
  - tk=8.6.10
  - tornado=6.0.4
  - wheel=0.34.2
  - xz=5.2.5
  - zlib=1.2.11
  - zstd=1.4.4
  - pytorch=1.2.0
  - torchvision=0.2.1
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值