1.报错
prebuild-install WARN install /usr/lib64/libstdc++.so.6: version `GLIBCXX_3.4.15' not found
2.运行以下命令检查
[root@db01 ~]# strings /usr/lib64/libstdc++.so.6 |grep GLIBCXX
3.解决方法
到编译时的目录下面找到: libstdc++.so.6.0.18
centos升级gcc到4.8.1(支持c++11)步骤
wget http://ftp.gnu.org/gnu/gcc/gcc-4.8.1/gcc-4.8.1.tar.gz tar -xvzf gcc-4.8.1.tar.gz cd gcc-4.8.1
3.1执行
./contrib/download_prerequisites cd .. mkdir build_gcc_4.8.1
3.2进入目录执行编译过程
cd build_gcc_4.8.1 ../gcc-4.8.1/configure --enable-checking=release --enable-languages=c,c++ --disable-multilib make && make install
OK,在build_gcc_4.8.1中将gcc已经安装完成
确定新安装的GCC的路径,之前安装时记下最后mv时的路径即可,我是默认安在了/usr/local/bin
ls /usr/local/bin | grep gcc
查看版本
/usr/sbin/update-alternatives --install /usr/bin/gcc gcc /usr/local/bin/x86_64-unknown-linux-gnu-gcc-4.8.1 40 gcc --version #查看版本 /usr/sbin/update-alternatives --install /usr/bin/g++ g++ /usr/local/bin/g++ 40 g++ --version #查看版本
注意,进入目录是,.libs是隐藏的:/home/build_gcc_4.8.1/x86_64-unknown-linux-gnu/libstdc++-v3/src/.libs
4.查看
strings libstdc++.so.6.0.18|grep GLIBCXX
一般来讲,里面就有满足需要的GLIBCXX版本了。
然后,把该文件拷贝到了/usr/lib64下.
然后将libstdc++.so.6指向libstdc++.so.6.0.18:
同时执行 避免报错
[root@localhost lib64]# rm -r libstdc++.so.6 && ln -s libstdc++.so.6.0.18 libstdc++.so.6OK