美文网首页
【2021-12-18更新】使用busco时遇到的几个bug的修

【2021-12-18更新】使用busco时遇到的几个bug的修

作者: 卖萌哥 | 来源:发表于2021-12-19 07:12 被阅读0次

    以前也使用conda安装过busco,使用起来完全没问题。但是随着时间推移,很多底层的依赖库进行了更新, 导致原本可以非常流畅运行的程序总是出现一些奇奇怪怪的错误。

    安装busco

    conda install -c bioconda busco -y
    

    此时安装的版本号是:

    busco                     5.2.2
    biopython                 1.79
    libstdcxx-ng              11.2.0
    

    错误1:metaeuk运行错误

    在一大堆看不懂的python的报错中可以看到

    subprocess.CalledProcessError: Command '['metaeuk', '-h']' returned non-zero exit status 1.
    

    看起来似乎是metaeuk没法运行成功。busco在更新到v5之后就用metaeuk代替了原本augustus的流程,因为两者结果比较之后metaeuk的算法能大大地减少所需的时间:

    the running time goes from days with Augustus to hours with Metaeuk.
    https://gitlab.com/ezlab/busco/-/issues/306

    于是运行 metaeuk -h ,报错:

    /lib64/libstdc++.so.6: version `GLIBCXX_3.4.20' not found (required by xxx)
    

    熟悉的libstdc++的问题。这个问题在之前使用conda时也经常出现,研究了一番发现可能是默认安装的libstdcxx-ng的版本太高导致的。最简单的办法就是安装一个低版本的libstdcxx-ng依赖库。

    conda install libstdcxx-ng=9.4.0
    

    之后再运行 metaeuk -h 就可以成功打印出帮助文档了。

    错误2:Bio.Alphabet has been removed from Biopython.

    这个错误也是由于busco所依赖的biopython的新版本而引起的。

    Bio.Alphabet has been removed from Biopython. In many cases, the alphabet can simply be ignored and removed from scripts. In a few cases, you may need to specify the molecule_type as an annotation on a SeqRecord for your script to work correctly. Please see https://biopython.org/wiki/Alphabet for more information.
    There was a problem installing BUSCO or importing one of its dependencies. See the user guide and the GitLab issue board (https://gitlab.com/ezlab/busco/issues) if you need further assistance.

    到它提到的网站去看了看(https://biopython.org/wiki/Alphabet),更新历史如下:

    Introduction
    This page is intended to help people updating existing code using Biopython to cope with the removal of the Bio.Alphabet module in Biopython 1.78 (September 2020).

    这个更改是从biopython的1.78版本之后才产生的,那么,只要把biopython的版本降低到1.78以下就可以了。或者如果你能力较强不嫌麻烦,也可以去尝试修改busco的源代码。但是通常不建议。

    conda install -y biopython=1.77
    

    解决完这两个问题之后就可以正常使用busco了。
    希望这个笔记对你有帮助。如果你有其他的关于busco使用的相关问题,欢迎给我留言。

    相关文章

      网友评论

          本文标题:【2021-12-18更新】使用busco时遇到的几个bug的修

          本文链接:https://www.haomeiwen.com/subject/hwbnfrtx.html