Linux中出现类似/usr/lib64/libstdc++.so.6: version `GLIBCXX_3.4.14' not found错误的解决办法

Linux中出现类似/usr/lib64/libstdc++.so.6: version `GLIBCXX_3.4.14' not found错误的解决办法

一、查看gcc所要求的版本

执行:gcc -v
Linux中出现类似/usr/lib64/libstdc++.so.6: version `GLIBCXX_3.4.14' not found错误的解决办法

二、提取当前的GLIBC字符串

执行:strings /usr/lib64/libstdc++.so.6 | grep GLIBC
Linux中出现类似/usr/lib64/libstdc++.so.6: version `GLIBCXX_3.4.14' not found错误的解决办法
从上面的输出可以发现gcc动态库并没有运行GLIBCX_3.4.14等等,说明gcc动态库需要升级到新的版本。

三、下载gcc-4.8.1(我这里下载的是4.8.1)

执行:wget http://ftp.gnu.org/gnu/gcc/gcc-4.8.1/gcc-4.8.1.tar.gz
Linux中出现类似/usr/lib64/libstdc++.so.6: version `GLIBCXX_3.4.14' not found错误的解决办法

四、解压gcc压缩文件

执行:tar -xvzf gcc-4.8.1.tar.gz
Linux中出现类似/usr/lib64/libstdc++.so.6: version `GLIBCXX_3.4.14' not found错误的解决办法

五、进入刚刚解压的gcc文件夹

首先执行:cd gcc-4.8.1
其次执行:./contrib/download_prerequisites
Linux中出现类似/usr/lib64/libstdc++.so.6: version `GLIBCXX_3.4.14' not found错误的解决办法

六、新建文件夹(我建的文件夹和gcc-4.8.1是在同一级目录)

首先执行:cd …
其次执行:mkdir build_gcc-4.8.1(当然新建文件夹的名字可以根据自己的喜好命名)
Linux中出现类似/usr/lib64/libstdc++.so.6: version `GLIBCXX_3.4.14' not found错误的解决办法

七、进入到新建的文件夹

首先执行:cd build_gcc-4.8.1
其次执行:…/configure --enable-checking=release --enable-languages=c,c++ --disable-multilib
Linux中出现类似/usr/lib64/libstdc++.so.6: version `GLIBCXX_3.4.14' not found错误的解决办法

八、编译、安装gcc

首先执行:make -j4(编译的时间挺长的,你需要耐心等候噢)
其次执行:make install
Linux中出现类似/usr/lib64/libstdc++.so.6: version `GLIBCXX_3.4.14' not found错误的解决办法Linux中出现类似/usr/lib64/libstdc++.so.6: version `GLIBCXX_3.4.14' not found错误的解决办法

九、执行升级命令

首先执行:/usr/sbin/update-alternatives --install /usr/bin/gcc gcc /usr/local/bin/x86_64-unknown-linux-gnu-gcc-4.8.1 40
其次执行:/usr/sbin/update-alternatives --install /usr/bin/gcc++ g++ /usr/local/bin/g++ 40
Linux中出现类似/usr/lib64/libstdc++.so.6: version `GLIBCXX_3.4.14' not found错误的解决办法
Linux中出现类似/usr/lib64/libstdc++.so.6: version `GLIBCXX_3.4.14' not found错误的解决办法

注:如果中间没出错的话,说明gcc已经安装成功,接下来我们就要使用新版本的gcc来代替旧版本的gcc

十、更新到新版本

  1. 查看gcc新版本安装路径,执行:find / -name “libstdc++.so*”
    Linux中出现类似/usr/lib64/libstdc++.so.6: version `GLIBCXX_3.4.14' not found错误的解决办法
    2.复制上面查到的新的gcc版本所在位置的文件到以下目录,执行:cp /build_gcc-4.8.1/x86_64-unknown-linux-gnu/libstdc+±v3/src/.libs/libstdc++.so.6.0.18 /usr/lib64
    Linux中出现类似/usr/lib64/libstdc++.so.6: version `GLIBCXX_3.4.14' not found错误的解决办法
    3.进入一下文件夹,执行:cd /usr/lib64
    Linux中出现类似/usr/lib64/libstdc++.so.6: version `GLIBCXX_3.4.14' not found错误的解决办法
    4.建立新版本的链接,首先执行:rm -rf libstdc++.so.6,其次执行:ln -s libstdc++.so.6.0.18 libstdc++.so.6
    Linux中出现类似/usr/lib64/libstdc++.so.6: version `GLIBCXX_3.4.14' not found错误的解决办法
    Linux中出现类似/usr/lib64/libstdc++.so.6: version `GLIBCXX_3.4.14' not found错误的解决办法

十一、重新查看

Linux中出现类似/usr/lib64/libstdc++.so.6: version `GLIBCXX_3.4.14' not found错误的解决办法
所需要的gcc库就已经有了。