上传原始读取>在Genebank上2GB到SRA,我在ubuntu 16.04上安装了aspera connect插件。但是插件并没有像genebank SRA门户网站上的说明那样弹出。
我在本地初始化插件(~/.aspera/connect/bin/asperaconnect
)时在终端上出现此错误:
lib/libstdc++.so.6: version `GLIBCXX_3.4.20' not found (required by /usr/lib/x86_64-linux-gnu/libproxy.so.1)
Failed to load module: /usr/lib/x86_64-linux-gnu/gio/modules/libgiolibproxy.so
我关注了一些主题,创建了指向/usr/lib/libstdc++.so.6
的链接但是它没有解决问题,仍显示上面的错误消息。
正在运行strings /usr/lib/libstdc++.so.6 | grep GLIBCXX
:
strings /usr/lib/x86_64-linux-gnu/libstdc++.so.6 | grep GLIBCXX
GLIBCXX_3.4
GLIBCXX_3.4.1
GLIBCXX_3.4.2
GLIBCXX_3.4.3
GLIBCXX_3.4.4
GLIBCXX_3.4.5
GLIBCXX_3.4.6
GLIBCXX_3.4.7
GLIBCXX_3.4.8
GLIBCXX_3.4.9
GLIBCXX_3.4.10
GLIBCXX_3.4.11
GLIBCXX_3.4.12
GLIBCXX_3.4.13
GLIBCXX_3.4.14
GLIBCXX_3.4.15
GLIBCXX_3.4.16
GLIBCXX_3.4.17
GLIBCXX_3.4.18
GLIBCXX_3.4.19
GLIBCXX_3.4.20
GLIBCXX_3.4.21
GLIBCXX_3.4.22
GLIBCXX_3.4.23
GLIBCXX_DEBUG_MESSAGE_LENGTH
GLIBCXX_3.4.20在列表中。我不知道如何使插件识别出来。
谢谢你, XP
答案 0 :(得分:18)
这是Ubuntu 16.04中解决此问题的解决方案
sudo add-apt-repository ppa:ubuntu-toolchain-r/test
sudo apt-get update
sudo apt-get install gcc-4.9
sudo apt-get upgrade libstdc++6
您可以检查是否获得了这样的GLIBCXX所需版本:
strings /usr/lib/x86_64-linux-gnu/libstdc++.so.6 | grep GLIBCXX
答案 1 :(得分:4)
考虑到Ubuntu提供/usr/lib/x86_64-linux-gnu/libproxy.so.1
,我们假设它与系统libstdc ++库兼容。这意味着应用程序实际上并未使用该系统库,而是使用其他一些版本。我建议检查应用程序是否设置LD_LIBRARY_PATH
以及该路径上是否有libstdc++.so.6
的另一个副本。在这种情况下,尝试将其移走或删除它 - 应用程序应该切换到更新的系统库,并且应该向后兼容。
答案 2 :(得分:3)
我解决了这样的问题(但是在CentOS上是GLIBCXX_3.4.21),但它并不依赖于os。该库是gcc
编译器的一部分,因此需要安装或编译gcc
的适当版本。这是gcc
版本表和相应libstdc++
的版本:
GCC 4.9.0: libstdc++.so.6.0.20 GCC 5.1.0: libstdc++.so.6.0.21 GCC 6.1.0: libstdc++.so.6.0.22 GCC 7.1.0: libstdc++.so.6.0.23 GCC 7.2.0: libstdc++.so.6.0.24 GCC 8.0.0: libstdc++.so.6.0.25
(完整版本列表为here)
它不依赖于如何安装gcc - 它可以从包中安装,也可以从源代码编译和安装。
有可能系统gcc库可用而不是新安装。因此需要指定环境变量在哪里查找库,例如在命令行中:
$ LD_LIBRARY_PATH=/usr/local/lib64 command args ...
答案 3 :(得分:1)
回答懒惰的人 这应该可以解决大多数情况下的情况
apt-get update && apt-get install sudo && \
sudo apt-get install build-essential software-properties-common -y && \
sudo add-apt-repository ppa:ubuntu-toolchain-r/test -y && \
sudo add-apt-repository ppa:george-edison55/cmake-3.x -y && \
sudo apt-get update && \
sudo apt-get install gcc-snapshot -y && \
sudo apt-get update && \
sudo apt-get install gcc-6 g++-6 -y && \
sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-6 60 --slave /usr/bin/g++ g++ /usr/bin/g++-6 && \
sudo apt-get install gcc-4.8 g++-4.8 -y && \
sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-4.8 40 --slave /usr/bin/g++ g++ /usr/bin/g++-4.8 && \
sudo update-alternatives --config gcc && \
sudo apt-get update && \
sudo apt-get install cmake -y;
答案 4 :(得分:0)
在安装h3时我也遇到了这个问题。 oklas的答案对我有所帮助,但扩展了该答案。 具有“ conda install -c anaconda gcc”的gcc版本是4.8.5。它与libstdc ++。so.6.0.22不兼容。因此,我卸载了它并安装了特定版本的gcc(版本6),它解决了我的问题。