在 Ubuntu 和 Windows 之间转移一个 Conda 环境

Transfer a Conda environment between Ubuntu and Windows

我想将我的 Conda 环境从我的 Ubuntu PC 转移到我的 Windows 11 PC。

我像这样从 Ubuntu PC 导出我的环境。

conda env export --file my_env.yml

该文件类似于:

name: testing
channels:
  - rigge
  - anaconda
  - defaults
dependencies:
  - _libgcc_mutex=0.1=main
  - _openmp_mutex=4.5=1_gnu
  - blas=1.0=mkl
  - blosc=1.21.0=h8c45485_0
  - brotli=1.0.9=he6710b0_2
  - brunsli=0.1=h2531618_0
  - bzip2=1.0.8=h7b6447c_0
  - ca-certificates=2020.10.14=0
...etc
 - python=3.10.0=h12debd9_5
- pip:
    - certifi==2021.5.30
    - cytoolz==0.11.0
    - imagecodecs==2021.8.26
prefix: /home/me/anaconda3/envs/my_env

导入到 Windows11 时:

conda env create --file my_env.yml

Solving environment: failed

ResolvePackageNotFound:
  - libffi==3.3=he6710b0_2
  - expat==2.4.4=h295c915_0
etc..

我知道我可以删除大部分依赖项并且它会起作用,我只是想知道是否有更好的方法来做到这一点?

请注意专门处理此问题的 section in the conda docs。导出环境时,使用 from-history 标志:

conda env export --from-history

这将确保 yml 文件仅包含您显式安装的包