从
gcc4.8.1开始完全支持C++11的编译器。今天教大家安装gcc4.8.1版本。
Linux(Centos)下编译安装gcc4.8.2
-
获取gcc4.8.2包:
下载链接:gcc.skazkaforyou.com/releases ,里面有
gcc所有的版本,自行下载。 也可以选择(推荐):$ wget http://gcc.skazkaforyou.com/releases/gcc-4.8.2/gcc-4.8.2.tar.gz -
解压缩
$ tar -zxvf gcc-4.8.2.tar.gz -
安装依赖
安装编译
gcc4.8.2,系统需要安装一个低版本的gcc,如果gcc、gcc-c++机器已经安装,此步骤可以略过。```sh $ yum update $ yum install gcc $ yum install gcc-c++ ```进入
gcc-4.8.2目录,执行./contrib/download_prerequisites脚本,会自动下载三个依赖库别为gmp-4.3.2、mpfr-2.4.2、mpc-0.8.1$ cd gcc-4.8.2 $ ./contrib/download_prerequisites -
编译
$ cd gcc-4.8.2 $ ./configure --prefix=/usr --enable-threads=posix --disable-checking --enable-languages=c,c++ --disable-multilib $ sudo make && make install -
验证
$ gcc -v
安装错误解决方案:
onfigure: error: in `/opt/soft/gcc-4.8.2': configure: error: no acceptable C compiler found in $PATH
缺少
gcc,安装即可: ```shyum install gcc
configure: error: C++ compiler missing or inoperational
缺少
gcc-c++,安装即可:sh $ yum update $ yu
libstdc++.so.6: version 'GLIBCXX_3.4.15' not found错误的解决
-
错误原因是缺少GLIBCXX_3.4.15版本,或是更高的版本。为了核实版本问题:
$ strings /usr/lib64/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我们看到当前
gcc版本中的确没有GLIBCXX_3.4.15,考虑到刚安装过新版的gcc,似乎不应该出现这样的问题。顺着
gcc安装路径,找到了新的libstdc++:$ strings /usr/local/lib64/libstdc++.so.6.0.20|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_3.4.14 GLIBCXX_3.4.15 GLIBCXX_3.4.16 GLIBCXX_3.4.17 GLIBCXX_3.4.18 GLIBCXX_3.4.19 GLIBCXX_3.4.20 GLIBCXX_FORCE_NEW GLIBCXX_DEBUG_MESSAGE_LENGTH这里该有的都有了,把这份软链到正确的地方,就妥了。
$ cp /usr/local/lib64/libstdc++.so.6.0.20 /usr/lib64/ $ cd /usr/lib64/ $ rm -f libstdc++.so.6 $ ln -s libstdc++.so.6.0.20 libstdc++.so.6 $ ll libstdc* lrwxrwxrwx. 1 root root 19 5月 12 13:34 libstdc++.so.6 -> libstdc++.so.6.0.20 -rwxr-xr-x. 1 root root 987096 11月 22 02:08 libstdc++.so.6.0.13 -rwxr-xr-x. 1 root root 6700716 5月 12 13:33 libstdc++.so.6.0.20此后,再进行编译安装就顺畅了