• /lib64/libstdc++.so.6: version `CXXABI_1.3.8’ not found(转载)


    原文地址https://blog.csdn.net/EI__Nino/article/details/100086157

    终极一战

    绝命一击 

    1 ImportError: /lib64/libstdc++.so.6: version `CXXABI_1.3.8’ not found

    libstdc++.so.6 版本过低导致的
    看看自己的 libstdc++.so.6 里是否包含了 CXXABI_1.3.8

     1 # strings /usr/lib64/libstdc++.so.6 | grep CXXABI
     2 CXXABI_1.3
     3 CXXABI_1.3.1
     4 CXXABI_1.3.2
     5 CXXABI_1.3.3
     6 CXXABI_1.3.4
     7 CXXABI_1.3.5
     8 CXXABI_1.3.6
     9 CXXABI_1.3.7
    10 CXXABI_TM_1

    果然没有。
    注意,不一定是GCC版本过低,用SCL(关于scl https://linux.cn/article-6776-1.html ) 升级GCC毛用都没有,根本不能升级 libstdc++.so.6
    所以我们要升级 libstdc++.so.6 ,顺便升级GCC。如果只升级GCC(通过scl)是无效的,因为gcc的版本高了,但是他的libstdc++是 require的 原来的 libstdc++.so.6。

    不信你看

    1 # cat /opt/rh/devtoolset-7/root/usr/lib/gcc/x86_64-redhat-linux/7/libstdc++.so
    2 
    3 /* GNU ld script
    4 Use the shared library, but some functions are only in
    5 the static library, so try that secondarily. */
    6 OUTPUT_FORMAT(elf64-x86-64)
    7 INPUT ( /usr/lib64/libstdc++.so.6 -lstdc++_nonshared )

    所以蛋疼了吧???

    只有一个解决方法就是重新编译GCC。

    编译GCC

    1. 安装依赖库 yum install -y gmp-devel mpfr-devel libmpc-devel
    2. 下载源码包 ftp://ftp.gnu.org/gnu/gcc/gcc-9.2.0/
    3. 解压缩
    4. configure
    5. make (注意,这个非常耗时,加 -j4 的意思就是4线程编译。如果你有4核,就会占满,导致CPU打满,服务报警,所以看情况用,我是直接 nohup make & 然后回家睡觉 )

    这批命令如下

    1 sudo yum install gmp-devel mpfr-devel libmpc-devel -y
    2 cd download
    3 wget ftp://ftp.gnu.org/gnu/gcc/gcc-9.2.0/gcc-9.2.0.tar.xz
    4 xz -d gcc-9.2.0.tar.xz
    5 tar -xf gcc-9.2.0.tar
    6 cd gcc-9.2.0
    7 ./configure --disable-multilib --enable-languages=c,c++ --prefix=$HOME/local
    8 make -j4
    9 make -j install

    安装完毕后,将新安装的路径加入到环境变量里。

    1 export LD_LIBRARY_PATH=$HOME/local/lib64

    可以在 ~/.bash_profile 里加上 PATH=$HOME/local/bin:$PATH
    把local 放到前面,以防同时存在相同名称bin的时候,能调用本地的bin文件
    把 LD_LIBRARY_PATH=$HOME/local/lib64 也加到 .base_profile里,可以方便以后使用。
    done.

  • 相关阅读:
    plaidctf2015 uncorrupt png
    Tsinghua dsa pa2
    课上实验-小软件破解
    HBase Block Cache(块缓存)
    JVM垃圾回收(二)- Minor GC vs Major GC vs Full GC
    JVM垃圾回收(一)- 什么是垃圾回收
    HBase Region 各个状态的转换
    HBase架构
    用GraphX分析伴生网络(二)
    用GraphX分析伴生网络(一)
  • 原文地址:https://www.cnblogs.com/SummerinShire/p/11840810.html
Copyright © 2020-2023  润新知