使用conda-forge作为默认通道与Anaconda在Mac Pro M1上安装软件包



我刚开始一份新工作,他们给了我一台Mac pro。我正在阅读关于新的M1处理器和所有的东西,我发现这篇文章特别有用。

然而,我仍然对此有一个疑问。如果我没有误解的话,在文章中,他们建议使用Anaconda(带有Rosetta2翻译(或安装Miniforge,将conda-forge设置为默认且唯一的通道,以便下载专门为M1编译的包。我找到了不同的教程,它们都建议使用Miniforge在M1上安装软件包。

我的问题是……难道我不能像使用Miniforge那样,只使用Anaconda,并将conda-forge设置为唯一的安装通道,来获得M1编译包吗?还是我误解了什么?谢谢

更新

我被纠正了。一点解释:在每个通道中,都有用于不同操作系统和体系结构的子驱动器。安装conda时,它将自动查找您配置的所有通道的正确子目录。为arm和x64安装的conda之间的区别在于它看起来是什么子目录。例如,对于我在linux机器上的conda(通过miniconda安装(,我手动添加了conda-forge通道,通道列表实际上如下所示:

channel URLs : https://conda.anaconda.org/conda-forge/linux-64
https://conda.anaconda.org/conda-forge/noarch
https://repo.anaconda.com/pkgs/main/linux-64
https://repo.anaconda.com/pkgs/main/noarch
https://repo.anaconda.com/pkgs/r/linux-64
https://repo.anaconda.com/pkgs/r/noarch

在你的MAC上,它看起来与你安装的64位anaconda/miniconda类似。现在来看一下miniorge和anaconda/miniconda之间的区别:第一个已经预先配置为使用conda-forge通道,后一个可以配置为相同。到目前为止,没有什么不同。唯一的区别是,您只能安装anaconda和miniconda的x64版本,但miniorge可以作为arm64安装安装,它将查看conda-forge的不同子目录,即conda-forge/osx-arm64

但是,您可以在运行conda命令时修改要考虑的子目录。不过,我没有经验说明它有多稳定。这可以通过设置环境变量CONDA_SUBDIR=osx-arm64来实现,您可以在每次运行特定命令之前设置该变量,也可以使用针对您的环境的conda-env-config命令来设置该变量。您必须确保环境中的所有包都将在设置CONDA_SUBDIR=osx-arm64变量时安装。


目前只有64位的anaconda安装程序。所有随之而来的都将是64位。所有安装的模块都将以64位为目标,conda将下载64位模块。不能将arm模块安装到64位conda安装。您需要决定:

  1. "便利性";(非常主观的(anaconda,即获得一堆针对64位的预装包
  2. 特定于您的体系结构的安装,具有可能的速度和其他优势

最新更新