Python 如何确定安装conda软件包需要启用的通道?
例如,假设我想安装bioconda包Python 如何确定安装conda软件包需要启用的通道?,python,anaconda,conda,Python,Anaconda,Conda,例如,假设我想安装bioconda包gapfiller conda new-n gapfiller-c bioconda-c conda forge gapfiller 如果运行上述命令,则会出现以下错误: PackagesNotFoundError: The following packages are not available from current channels: - boost[version='>=1.57.0,<1.57.1.0a0'] Current
gapfiller
conda new-n gapfiller-c bioconda-c conda forge gapfiller
如果运行上述命令,则会出现以下错误:
PackagesNotFoundError: The following packages are not available from current channels:
- boost[version='>=1.57.0,<1.57.1.0a0']
Current channels:
- https://conda.anaconda.org/bioconda/linux-64
- https://conda.anaconda.org/bioconda/noarch
- 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
如何确定用于解决
PackagesNotFoundError
的正确通道?通常,当涉及到旧的软件包版本时,它们会被降级到。有几种方法可以将其添加回(例如,配置设置恢复空闲\u通道
或环境变量CONDA\u恢复空闲\u通道
),但一个简单的特别解决方案是将其作为一个通道包括在内:
conda install -c free ...
对于linux-64平台上的boost=1.57
,我明白了
conda search -c free boost=1.57[subdir='linux-64']
Loading channels: done
# Name Version Build Channel
boost 1.57.0 0 free
boost 1.57.0 1 free
boost 1.57.0 4 free
在anaconda.org上搜索,它将搜索所有频道。您还可以指定要从当前频道中搜索的版本,或者可以指定
-c
到conda search
。嗯,在这种情况下,您是正确的。但这是一个普遍的解决方案吗?@Migwell general?不,不是真的-至少没什么。正如darthbith提到的,Anaconda.org允许您搜索软件包,其中包括用户渠道(即,使用风险自负)。通常,您只希望使用您信任的渠道。大多数软件包要么是默认的,要么是conda forge(或者对我来说是bioconda),一些较旧的软件包被降级为免费软件包,再加上偶尔的组织渠道,例如用于bleed edge版本的pytorch。