美文网首页
关于libstdc++.so.6: version `GLIBC

关于libstdc++.so.6: version `GLIBC

作者: 朝圣的路上 | 来源:发表于2017-04-13 17:39 被阅读6255次

    在系统重新启动后,启动相应的服务是出现如题错误:

    libstdc++.so.6: version `GLIBCXX_3.4.20' not found

    这个错误是目前的libstdc++.so.6没有对应的GLBCXX造成的。可以通过如下命令查看:

    [ss@server1 ~]$ strings /usr/lib64/libstdc++.so.6 | grep GLIBCXX
    GLIBCXX_3.4
    GLIBCXX_3.4.1
    ...
    GLIBCXX_3.4.11
    GLIBCXX_3.4.12
    GLIBCXX_3.4.13
    GLIBCXX_FORCE_NEW
    GLIBCXX_DEBUG_MESSAGE_LENGTH

    可以看到,最高版本为3.4.13,没有对应的3.4.20。
    通过查看libstdc++.so.6可以看到它链接到了另外一个库

    [ss@server1 ~]$ ll /usr/lib64/libstdc++.so.6
    lrwxrwxrwx. 1 root root 19 3月 31 2016 /usr/lib64/libstdc++.so.6 -> libstdc++.so.6.0.13

    接下来看看系统还有没有更高版本的lib库

    [ss@server1 service]# find / -name libstdc++.so.6*
    /usr/lib64/libstdc++.so.6.bak
    /usr/lib64/libstdc++.so.6.0.13
    /usr/lib64/libstdc++.so.6
    /usr/lib64/libstdc++.so.6.0.20
    /usr/local/lib64/libstdc++.so.6
    /usr/local/lib64/libstdc++.so.6.0.20-gdb.py
    /usr/local/lib64/libstdc++.so.6.0.20

    刚好还有一个6.0.20版本,查看它的信息

    [root@spider-server1 service]# strings /usr/local/lib64/libstdc++.so.6.0.20 | grep GLIBCXX
    GLIBCXX_3.4
    GLIBCXX_3.4.1
    GLIBCXX_3.4.2
    ...
    GLIBCXX_3.4.19
    GLIBCXX_3.4.20
    GLIBCXX_FORCE_NEW
    GLIBCXX_DEBUG_MESSAGE_LENGTH

    看来这个版本满足我们的需求,重新做链接

    $ cp /usr/local/lib64/libstdc++.so.6.0.20 /usr/lib64/libstdc++.so.6.0.20
    $ rm -f /usr/lib64/libstdc++.so.6
    $ ln -s /usr/lib64/libstdc++.so.6.0.20 /usr/lib64/libstdc++.so.6

    好的,接下来应用可以跑起来了。

    相关文章

      网友评论

          本文标题:关于libstdc++.so.6: version `GLIBC

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