• ImportError: /lib64/libm.so.6: version `CXXAB_1.3.8.' not found (required by /usr/local/python37/lib/python3.7/site-packages/tensorflow/python/_pywrap_tensorflow_internal.so)


    问题背景

    使用在AI项目中,由于需要用到tensorflow,scipy,sklearn等这些库,所以需要libstdc++库。

    问题原因

    这个问题的出现与写的代码无关,只与操作系统的libstdc++配置相关,由于Linux内核不支持,gcc版本太低。

    解决方案

    百度查询稀里糊涂的就解决了

    解决过程

    1. 查看系统gcc版本
    gcc --version
    
    1. GCC 4.8.5 不支持 C++11,在升级gcc的时候使用yum是无效的,只能下载源码、编译。
    2. 下载和解压
    cd /home
    wget ftp://gcc.gnu.org/pub/gcc/releases/gcc-9.1.0/gcc-9.1.0.tar.gz
    tar jxvf gcc-9.1.0.tar.gz
    
    1. 编译前的准备工作
    #安装C和C++的静态库
    yum install -y glibc-static libstdc++-static
    #安装旧版本的gcc、c++编译器
    yum install gcc gcc-c++
    
    1. 下载一些必要的依赖
    #转到gcc源程序根目录
    cd /usr/local/src/gcc-4.8.5
    #下载一些必备的依赖程序
    ./contrib/download_prerequisites
    
    1. 安装gcc需要下载诸如gmp、mpfr、mpc等依赖文件,执行download_prerequisites将会自动完成这项工作,但是由于一些原因可能需要需要我们手动操作,步骤是:1 下载,2 解压, 3 建立软帘
    MPFR=mpfr-2.4.2
    GMP=gmp-4.3.2
    MPC=mpc-0.8.1
     
    wget ftp://gcc.gnu.org/pub/gcc/infrastructure/$MPFR.tar.bz2 
    tar xjf $MPFR.tar.bz2 
    ln -sf $MPFR mpfr 
     
    wget ftp://gcc.gnu.org/pub/gcc/infrastructure/$GMP.tar.bz2 
    tar xjf $GMP.tar.bz2  
    ln -sf $GMP gmp 
     
    wget ftp://gcc.gnu.org/pub/gcc/infrastructure/$MPC.tar.gz
    tar xzf $MPC.tar.gz 
    ln -sf $MPC mpc 
     
    rm -f $MPFR.tar.bz2 $GMP.tar.bz2 $MPC.tar.gz 
    
    1. 编译安装gcc
    #跳转到编译后的程序文件存放目录
    cd /home/gcc目录
    #调用gcc源程序的configure(后面的参数选项可根据需要自行修改),用于配置gcc
    ./configure --enable-checking=release --enable-languages=c,c++ --disable-multilib
    #编译gcc源程序
    make  # 这一步需要花费 两个小时的时间
    #安装gcc
    make install
    
    1. 使用locate命令定位到libstdc++.so的位置,然后复制,建立软链
    # 需要注意路径与权限问题
    locate libstdc++.so  
    rm -rf libstdc++.so.6
    ln -sf libstdc++.so.6.0.24 libstdc++.so.6
    Idconfig
    
  • 相关阅读:
    Shader-另类实现
    Unity3d- 资源
    我不快乐
    陷入了一个NGUI自适应的一个坑
    ngui 自适应
    NGUI的数据绑定
    我已经很努力,但是依旧写给自己
    那些奇葩的叫法
    C#修改类模板
    开启Unity3D之旅
  • 原文地址:https://www.cnblogs.com/mayite/p/13267263.html
Copyright © 2020-2023  润新知