在软件包安装过程中指定平台

时间:2019-03-21 19:54:01

标签: python conda

Conda中的某些软件包包括特定于平台的版本(例如 osx-64 )和与平台无关的版本( noarch )。尽管可以使用--channel标志或CHANNEL::PACKAGE语法轻松地指定频道,但是在指定平台上没有任何文档。

运行conda info时,可以看到在配置中添加的每个通道中,都有一个 osx-64 noarch 。我可以为频道设置优先级,但是平台上没有任何等效的选项。

作为一种手动解决方法,我意识到我可以直接从渠道的tarball安装。例如,如果我想要Conda Forge的 noarch 版本的Automat,则可以运行

conda install https://anaconda.org/conda-forge/automat/0.7.0/download/noarch/automat-0.7.0-py_1.tar.bz2

osx-64

conda install https://anaconda.org/conda-forge/automat/0.7.0/download/osx-64/automat-0.7.0-py36_0.tar.bz2

但这不会安装依赖项,因此必须随后运行

conda upgrade automat

安装软件包时如何直接指示使用特定平台?

1 个答案:

答案 0 :(得分:1)

通常,如果您使用conda info(例如

)查看频道网址,
channel URLs : https://conda.anaconda.org/bioconda/osx-64
               https://conda.anaconda.org/bioconda/noarch
               https://repo.anaconda.com/pkgs/main/osx-64
               https://repo.anaconda.com/pkgs/main/noarch
               https://repo.anaconda.com/pkgs/free/osx-64
               https://repo.anaconda.com/pkgs/free/noarch
               https://repo.anaconda.com/pkgs/r/osx-64
               https://repo.anaconda.com/pkgs/r/noarch
               https://conda.anaconda.org/conda-forge/osx-64
               https://conda.anaconda.org/conda-forge/noarch

您可以使用CHANNEL::PACKAGE语法使用子目录来指定特定于平台的通道。

例如,在Conda Forge案例中,要么使用其中一个,要么

conda install conda-forge/osx-64::automat

conda install conda-forge/noarch::automat