升级 GCC 支持C++11

oyl 2017-01-26

编译安装软件的时候,发现错误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,大功告成!

ToolChain - Ubuntu Wiki

ToolChain test builds

GCC 的详细介绍:请点这里

相关推荐