本人最近在进行基因注释时,本想用mamba安装一下braker,却没想到以前一向好用的mamba软件居然反常地报错了……
本着做生信一定要学会使用谷歌的原则,我去高搜了一下,了解了大体问题:libstdc++库文件版本低,需要升级版本。
大体解决方案如下:
#看看有哪些GLIBCXX版本
strings /usr/lib/x86_64-linux-gnu/libstdc++.so.6 | grep GLIBC
果然没有26。
#安装libstdc++6 和 gcc-9
sudo add-apt-repository ppa:ubuntu-toolchain-r/test
sudo apt update
sudo apt install gcc-9
sudo apt install libstdc++6
然而,还是报错了:由于没有公钥,无法验证下列签名: NO_PUBKEY 0A2B99C915F99516
那就继续查找解决办法。
试了下以下命令:
sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 0A2B99C915F99516
gpg --export --armor http://keyserver.ubuntu.com/ | sudo apt-key add -
都不行,还是报错:gpg: 找不到有效的 OpenPGP 数据。
长话短说,以我猜测,这个情况就是源找不到,需要调试源,然后调试源遇到各种报错,处理解决无关的url源。。。
grep -r 'cdn.oxfordnanoportal.com' /etc/apt/
/etc/apt/sources.list.d/nanoporetech.sources.list:deb http://cdn.oxfordnanoportal.com/apt bionic-stable non-free
/etc/apt/sources.list.d/nanoporetech.sources.list.save:deb http://cdn.oxfordnanoportal.com/apt bionic-stable non-free
vim /etc/apt/sources.list
apt更新的问题解决,进一步升级libstdc++库文件版本。安装miniconda兼容库,升级libstdc++6。
sudo apt-get upgrade libstdc++6
echo 'export LD_LIBRARY_PATH=$HOME/miniconda3/lib:$LD_LIBRARY_PATH' >> ~/.bashrc
conda install libstdcxx-ng
基本上可以搞定