想要支持C++11,必须升级到gcc-4.8以上。
1、wget下载gcc-4.8.5
gcc-4.8.5.tar.gz下载地址:
官网有全版本下载:http://ftp.gnu.org/gnu/gcc/
国内:http://mirrors.ustc.edu.cn/gnu/gcc/
最上级目录:http://ftp.gnu.org/
如果直接安装,提示requires GMP 4.2+, MPFR2.4.0+ and MPC0.8.0+,所以要下载和安装依赖库
# wget http://mirrors.ustc.edu.cn/gnu/gcc/gcc-4.8.5/gcc-4.8.5.tar.gz
# tar xzvf gcc-*.tar.gz
# cd gcc-*
# ./contrib/download_prerequisites
运行download_prerequisites脚本,./contrib/download_prerequisites ,这个脚本会自动帮你下载所需要的依赖文件和库.这个神奇的脚本文件会帮我们下载、配置、安装依赖库,可以节约我们大量的时间和精力。跳过步骤2,3.
ubuntu
sudo apt-get install libgmp-dev libmpfr-dev libmpc-dev libisl-dev libcloog-isl-dev
2、下载GMP、MPFR和MPC
我用的是GMP6.1.1、MPFR3.1.5、MPC1.0.3
GMP下载地址戳这里:
官网有最新版本下载:https://gmplib.org/
http://ftp.gnu.org/gnu/gmp/
MPFR下载地址戳这里:
官网有最新版本下载:http://www.mpfr.org/mpfr-current/#download
http://ftp.gnu.org/gnu/mpfr/
MPC下载地址戳这里:
官网有最新版本下载:http://www.multiprecision.org/index.php?prog=mpc&page=download
http://ftp.gnu.org/gnu/mpc/
3、安装GMP、MPFR和MPC有顺序要求,GMP是基础、MPC依赖MPFR。
1)先安装gmp
tar -xjvf gmp-*.tar.bz2
cd gmp-*
./configure
make
make check
sudo make install
说明程序的头文件(.h)和库文件(lib*)的位置,本次安装会安装在 /usr/local/include 和 /usr/local/lib
2)再安装mpfr
tar -xzvf mpfr-*.tar.gz
cd mpfr-*
./configure
make
make check
sudo make install
3)最后安装mpc
tar -xzvf mpc-*.tar.gz
cd mpc-*
./configure
make
make check
sudo make install
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/lib:/usr/lib
4、安装isl库(option)
sudo apt-get install libisl-dev libcloog-isl-dev
5、安装gcc
mkdir /usr/gcc-4.8.5
tar -xzvf gcc-*.tar.gz
cd gcc-*
mkdir build
cd build
../configure --prefix=/usr/gcc-4.8.5 --enable-threads=posix --disable-checking --disable-multilib --enable-languages=c,c++
make
sudo make install
6、gcc-4.8.5的环境变量设置
修改相应的环境变量,主要包括PATH和LD_LIBRARY
方法一:
添加gcc4.8.2到可选项:
update-alternatives --install /usr/bin/gcc gcc /usr/gcc482/bin/i686-pc-linux-gnu-gcc 40
倒数第三个参数是名字,倒数第二个参数为新GCC路径,最后一个参数40为优先级,设大一些之后就自动使用新版了
方法二:
这种方法很简单,设置软链接即可
# mkdir /usr/gcc447backup/
# mv /usr/bin/{gcc,g++} /usr/gcc447backup
# ln -s /usr/gcc-4.8.5/bin/gcc /usr/bin/gcc
# ln -s /usr/gcc-4.8.5/bin/g++ /usr/bin/g++
# gcc -v
交叉工具链制作至尊宝典
https://blog.csdn.net/turui/article/details/6596093
/lib64/libc.so.6: version `GLIBC_2.14’ not found问题
https://my.oschina.net/zhangxu0512/blog/262275
*GCC升级 支持C++11
https://blog.csdn.net/oatnehc/article/details/52754420
linux下安装gcc详解
https://www.cnblogs.com/Hxinguan/p/5016305.html
*CentOS离线安装gcc4.8.2
https://blog.csdn.net/windows_nt/article/details/21240843
*linux下升级gcc的方法
https://blog.csdn.net/origin_lee/article/details/43231397
*【笔记】CentOS上源码安装GCC 4.8.2
https://my.oschina.net/vaero/blog/210485