CentOS升级gcc到4.8.2以支持C++11标准的方法
原来的GCC版本:4.4.7(在用户目录下即可查看,输入命令 gcc -v或g++ -v)
升级步骤:
-
首先下载4.8.2安装包,输入命令:
wget http://gcc.skazkaforyou.com/releases/gcc-4.8.2/gcc-4.8.2.tar.gz
-
解压缩安装包,输入命令:
tar -xf gcc-4.8.2.tar.gz
-
解压完成后进入目录gcc-4.8.2
输入命令:
./contrib/download_prerequisites
-
建立输出目录:
mkdir gcc-build-4.8.2
进入输出目录:
cd gcc-build-4.8.2
-
输入命令:
../configure –enable-checking=release –enable-languages=c,c++ –disable-multilib
-
编译,输入命令:make
-
安装,输入命令,这一步要在根目录下进行,需要root权限:make install
-
验证:gcc -v或g++ -v 或是:gcc --version g++ --version
检查安装情况,在root下输入命令查看是否有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这样是没有的,方法是输入命令: cp /usr/local/lib/libstdc++.so.6 /usr/lib/这样就可以覆盖了,因为在 /usr/local/lib/libstdc++.so.6中是包含GLIBCXX_3.4.15的。