升级 GCC 支持C++11
编译安装软件的时候,发现错误configure: error: *** A compiler with support for C++11 language features is required.
原来是gcc版本太低了,我的版本是gcc version 4.6.3
想要支持C++11,必须升级到gcc4.8以上。看看gcc的更新,决定升级到gcc4.9.4
1、下载GCC4.9.4
GCC4.9.4官网有全版本下载:http://ftp.gnu.org/gnu/gcc/
如果直接安装,提示Building GCC requires GMP 4.2+, MPFR2.4.0+ and MPC0.8.0+,所以要下载和安装依赖库
2、下载GMP、MPFR和MPC
我用的是GMP6.1.1、MPFR3.1.5、MPC1.0.3
GMP官网有最新版本下载:https://gmplib.org/
MPFR官网有最新版本下载:http://www.mpfr.org/mpfr-current/#download
MPC官网有最新版本下载:http://www.multiprecision.org/index.php?prog=mpc&page=download
MPFR3.1.5和GMP6.1.1及MPC1.0.3 也可以到安科网资源站下载:
------------------------------------------分割线------------------------------------------
具体下载目录在 /2017年资料/1月/26日/升级 GCC 支持C++11/
------------------------------------------分割线------------------------------------------
3、安装GMP、MPFR和MPC有顺序要求,GMP是基础、MPC依赖MPFR。
1)先安装GMP
tar -xvf gmp-6.1.1.tar.bz2
cd gmp-6.1.1
./configure
make
sudo make install
2)再安装MPFR
tar -xvf mpfr-3.1.5.tar.gz
cd mpfr-3.1.5
./configure
make
sudo make install
3)最后安装MPC
tar -xvf mpc-1.0.3.tar.gz
cd mpc-1.0.3
./configure
make
sudo make install
4、安装isl库
sudo apt-get install libisl-dev libcloog-isl-dev
5、安装GCC
tar -xvf gcc-4.9.4.tar.gz
cd gcc-4.9.4
./configure
make
sudo make install
6、成功安装后,再查看gcc版本就发现已经变了。
Using built-in specs.
COLLECT_GCC=gcc
COLLECT_LTO_WRAPPER=/usr/local/libexec/gcc/i686-pc-linux-gnu/4.9.4/lto-wrapper
Target: i686-pc-linux-gnu
Configured with: ./configure
Thread model: posix
gcc version 4.9.4 (GCC)
OK,大功告成!
GCC 的详细介绍:请点这里