• 解决Linux 环境 GLIBCXX_3.4.15' not found问题


    升级Centos系统之后,运行filezilla时,出现如下错误的提示信息:

    ./filezilla: /usr/lib/libstdc++.so.6: version `GLIBCXX_3.4.15' not found (required by ./filezilla)

    如果是64位系统报错信息如下

    ./filezilla: /usr/lib64/libstdc++.so.6: version `GLIBCXX_3.4.15' not found (required by ./filezilla)

    原因是没有GLIBCXX_3.4.15版本,或是更高的版本。
    输入命令查询一下结果:

    [root@localhost ~]# strings /usr/lib/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_FORCE_NEW
    GLIBCXX_DEBUG_MESSAGE_LENGTH

    我们看到当前GCC版本中的确没有GLIBCXX_3.4.15。

    64位系统命令为:

    [root@localhost ~]# strings /usr/lib64/libstdc++.so.6 | grep GLIBCXX

    下载新版本,地址:http://ftp.de.debian.org/debian/pool/main/g/gcc-4.7/libstdc++6_4.7.2-5_i386.deb

    64位系统:
    http://ftp.de.debian.org/debian/pool/main/g/gcc-4.7/libstdc++6_4.7.2-5_amd64.deb

    假设下载的文件放在/data0/software/。
    解压:

    [root@localhost software]# ar -x libstdc++6_4.7.2-5_i386.deb && tar xvf data.tar.gz
    解压后出现/data0/software/usr目录;
    [root@localhost software]# cd  /data0/software/usr/lib/i380-linux-gun
    [root@localhost i386-linux-gnu]# cp libstdc++.so.6.0.17 /usr/lib
    [root@localhost i386-linux-gnu]# /usr/lib
    [root@localhost lib]# rm libstdc++.so.6
    [root@localhost lib]# ln libstdc++.so.6.0.17 libstdc++.so.6

    注意64位系统为
    [root@localhost software]# cd  /data0/software/usr/lib/x86_64-linux-gnu
    [root@localhost x86_64-linux-gnu]# cp libstdc++.so.6.0.17 /usr/lib64
    [root@localhost x86_64-linux-gnu]# /usr/lib
    [root@localhost lib64]# rm libstdc++.so.6
    [root@localhost lib64]# ln libstdc++.so.6.0.17 libstdc++.so.6

    重新建立软连接,我们再输入命令查询一下结果:

    [root@localhost lib]# strings /usr/lib/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_DEBUG_MESSAGE_LENGTH

    已经安装好GLIBCXX_3.4.15啦。

    总结:

    1 下载libstdc++.so.6.0.17 文件(下载地址文章前方)

    2 放到临时文件夹 /tmp,解压tar -jxvf FileZilla_3.7.3_x86_64-linux-gnu.tar.bz2

    3 解压后出现目录/tmp/usr/lib/x86_64-linux-gnu,拷贝文件cp libstdc++.so.6.0.17 /usr/lib

    4 cd  /usr/lib64删除以前的libstdc++.so.6 链接rm libstdc++.so.6

    5 建立软连接 ln libstdc++.so.6.0.17 libstdc++.so.6  

    6  strings /usr/lib64/libstdc++.so.6  | grep GLIBCXX  通过这个方法查找出对应的版本型号

    本人在 linux 6.4 x86_64位系统上安装成功过

  • 相关阅读:
    DevExpress控件经验集合
    Oracle 11g基础
    NoSuchMethodException问题总结
    设计模式学习笔记十四:适配器模式
    设计模式学习笔记十三:模板方法模式
    设计模式学习笔记十二:访问者模式
    设计模式学习笔记十一:观察者模式
    【亲述】Uber容错设计与多机房容灾方案
    Linux 动态监听进程shell
    玩具:加减法验证码(1+?=4)
  • 原文地址:https://www.cnblogs.com/ccy1106/p/9973227.html
Copyright © 2020-2023  润新知