unix 与anaconda的套件恩怨

af7jpaap  于 2022-11-04  发布在  Unix
关注(0)|答案(2)|浏览(222)

我试图在我的本地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']
guykilcj

guykilcj1#

顶级域名注册商

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
hgc7kmma

hgc7kmma2#

你可以告诉conda在coda-forge中搜索软件包,如下所示:

conda config --append channels conda-forge

相关问题