​

windows下的vs2012对c++11力度不够。最近把gcc4.7.3支持的c++11特性玩了一遍,没办法,只能升级到gcc4.8.1才能继续玩了。。

目前最新版是 gcc4.8.1

可以用PPA来安装,输入如下命令即可:

sudo add-apt-repository ppa:ubuntu-toolchain-r/test

sudo apt-get update

sudo apt-get install gcc-4.8

安装好了后,如果以前安装了gcc版本的话,可以输入下面命令可以查看:

ls /usr/bin/gcc*

我的系统中显示:

/usr/bin/gcc /usr/bin/gcc-ar-4.7 /usr/bin/gcc-nm-4.8

/usr/bin/gcc-4.7 /usr/bin/gcc-ar-4.8 /usr/bin/gcc-ranlib-4.7

/usr/bin/gcc-4.8 /usr/bin/gcc-nm-4.7 /usr/bin/gcc-ranlib-4.8

现在我电脑上面安装了gcc-4.8 和 gcc-4.7 两个版本,用gcc -v 命令查看还是以前的 gcc-4.7.3 。

可以使用update-alternatives管理电脑上的GCC版本

sudo update-alternatives –install /usr/bin/gcc gcc /usr/bin/gcc-4.8 50

sudo update-alternatives –install /usr/bin/gcc gcc /usr/bin/gcc-4.7 40

这样在输入 gcc -v 查看就是 gcc-4.8.1 了

下面在gcc各版本间切换:

sudo update-alternatives –config gcc

有 2 个候选项可用于替换 gcc (提供 /usr/bin/gcc)。

选择 路径 优先级 状态

————————————————————

0 /usr/bin/gcc-4.8 50 自动模式

* 1 /usr/bin/gcc-4.7 40 手动模式

2 /usr/bin/gcc-4.8 50 手动模式

要维持当前值[*]请按回车键,或者键入选择的编号即可。

同样的方法可以安装 g++ 。

我是这样编译 cpp 程序的, g++ -std=c++11 test.cpp

所以有必要也使用最新版的 g++ 。