Anaconda 包冲突问题

3

我正尝试在本地的Ubuntu上使用Anaconda安装名为BEAST的程序,但出现以下消息:

Package libgcc-ng conflicts for: 
beast2 -> beagle-lib -> libgcc-ng[version='>=4.9|>=7.3.0|>=7.2.0'] 
python=3.7 -> libgcc-ng[version='>=7.2.0|>=7.3.0']

我曾以为安装了Anaconda就可以摆脱软件包冲突问题。

这个冲突是什么意思呢?

看起来好像两个程序对于同一个软件包版本的优先级不一致,那又怎样呢?这两个程序不能各自按照自己的优先级继续运行吗?

顺便问一下:我该如何解决这个问题?

编辑:

 conda create -n test python=3.7 beast2

给我这个:

UnsatisfiableError: The following specifications were found to be incompatible with each other:

Output in format: Requested package -> Available versions

Package libffi conflicts for:
python=3.7 -> libffi[version='>=3.2.1,<3.3a0|>=3.3,<3.4.0a0']
beast2 -> gettext[version='>=0.19.8.1,<1.0a0'] -> libffi[version='>=3.2.1,<3.3a0']

尝试创建一个包含所有依赖项的新环境。我已经使用提到的依赖项尝试过了,它运行得很好(conda create -n test python=3.7 beast2)。 - Marek Schwarz
相似/相同的错误。"libstdcxx-ng 冲突..." - AWE
你能发布一下 conda create -n test python=3.7 beast2 的完整输出吗?你能验证一下你的 conda 安装配置了哪些频道吗?(我已经添加了 biocondaconda-forge - Marek Schwarz
很高兴使用 mamba 并一次性安装所有内容。https://dev59.com/t1IG5IYBdhLWcg3w6mN8#69137255 - Sterling
2个回答

7

简述

conda create -n beast -c conda-forge -c bioconda python=3.7 beast2

简化版

通过告诉conda它可以访问conda-forge,就可以有一些额外的选项来解决依赖冲突。然而,这并不能完全解释为什么会出现这种情况。

$ conda create -n beast python=3.7 libgcc-ng=7.3 libstdcxx-ng=7.3
$ activate beast
$ conda install -c bioconda beast2
Package libstdcxx-ng conflicts for:
python=3.7 -> libstdcxx-ng[version='>=7.2.0|>=7.3.0']
beast2 -> beagle-lib -> libstdcxx-ng[version='>=7.3.0|>=7.5.0']

目前并不清楚为什么这些依赖项没有被满足,因为我们已经安装了libstdcxx-ng版本为7.3。

另外一个选择

如果您改用mamba创建环境,则可以获得稍微更有帮助的反馈信息:

$ conda install mamba
$ mamba create -n beast-mamba python=3.7 beast2
...
Problem: nothing provides requested beast2
...
$ mamba create -n beast-mamba -c bioconda python=3.7 beast2
...
Encountered problems while solving.
Problem: nothing provides openjdk 8.0* zulu8* needed by beast2-2.4.5-0
...
$ mamba create -n beast-mamba -c bioconda -c conda-forge python=3.7 beast2
...
Success

0
你可以这样告诉conda在conda-forge中搜索软件包:

conda config --append channels conda-forge

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接