在M1芯片的电脑上使用conda安装x64的库
背景提示
“众所周知,苹果新芯片采用的是ARM架构,在使用conda的时候会发现一些库仅支持x64的(接下来都以esmf为例),会下载不了(出现如下错误)。”
这种情况,可以先上 https://anaconda.org 查一下这个库支持的版本,再根据之前文章(https://www.cnblogs.com/dan-chen/p/15987085.html)提到过add channels的方法。但例子中的esmf没办法支持arm架构,只能借助rosetta转译
解决方法
接下来将介绍如何解决这个问题,以esmf为例:
CONDA_SUBDIR=osx-64 conda create -n <env_name> python=3.8
conda activate <env_name>
conda config --env --set subdir osx-64
完成之后,就可以在创建的环境里下载esmf啦
为了以后方便,还可以在~/.zshrc里添加以下脚本,之后用新的命令就直接可以创建x64的环境了。
### add this to ~/.zshrc (or ~/.bashrc if you're using Bash)
create_x64_conda_environment () {
# create a conda environment using x86 architecture
# first argument is environment name, all subsequent arguments will be passed to `conda create`
# example usage: create_x64_conda_environment myenv_x64 python=3.9
CONDA_SUBDIR=osx-64 conda create -n $@
conda activate $1
conda config --env --set subdir osx-64
}
注意: create_x64_conda_environment 就是自定义的命令,也可以改成自己容易记的。
以上内容搬运自 https://towardsdatascience.com/how-to-manage-conda-environments-on-an-apple-silicon-m1-mac-1e29cb3bad12 ,并在自己电脑上得到实践。在个人应用的时候尝试了2个版本,一是开启rosetta的terminal副本(如下图,右键 -> get info -> 选中open using rosetta),二是未设置的terminal,均可成功应用上述方法。
祝大家愉快conda!
标签:osx,use,esmf,create,x64,environment,conda,M1 From: https://www.cnblogs.com/dan-chen/p/16807269.html