【错误解决】不同操作系统间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
在Linux系统中,可以使用conda环境迁移工具来实现conda环境迁移。首先,需要将要迁移环境导出为一个yml文件,可以使用以下命令导出当前环境: ``` conda env export > environment.yml ``` 接下来,在目标机器上创建新的环境,可以使用以下命令: ``` conda env create -f environment.yml ``` 这将根据导出的yml文件创建一个新的环境。另外,如果你想将已有的环境迁移到其他服务器,可以使用以下步骤: 1. 克隆要打包的anaconda环境: ``` conda create -n 新环境的名称 --clone 老环境名称 ``` 2. 进入克隆的conda环境: ``` conda activate 新环境名称 ``` 3. 安装conda-forge和conda-pack打包工具: ``` conda install -c conda-forge conda-pack ``` 4. 使用conda pack命令将当前环境打包: ``` conda pack -n 新环境名称 -o 新环境名称.tar.gz ``` 5. 打包后的文件一般保存在当前目录下,可以将该文件复制到目标服务器,并解压缩后即可使用该环境。 综上所述,以上是在Linux系统中进行conda环境迁移的步骤。希望对你有帮助!<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *2* [Linux环境conda虚拟环境迁移](https://blog.csdn.net/qq_42730750/article/details/125413470)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT0_1"}}] [.reference_item style="max-width: 50%"] - *3* [Conda环境迁移](https://blog.csdn.net/weixin_54973482/article/details/123865731)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT0_1"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值