Conda中的一些软件包包括平台特定的(例如,osx-64)和平台不可知的(noarch)构建。虽然可以使用--channel
标志或CHANNEL::PACKAGE
语法轻松指定通道,但是没有关于指定平台的任何文档。
当我运行conda info
时,我可以看到在我的配置中添加的每个通道中,都有一个osx-64和noarch的URL。我可以为频道设置优先级,但我没有看到平台的任何等效选项。
作为手动解决方法,我意识到我可以直接从频道的tarball安装。例如,如果我想从Conda Forge获得Automat的noarch版本,我可以运行
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
如何在安装软件包时直接指示使用特定平台?
通常,如果您使用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