升级Ubuntu 12.04下的gcc

C++11标准开始支持类内初始化 (in-class initializer),Qt creator编译出现error,不支持这个特性,原因在于,Ubuntu12.04默认的是使用gcc4.6,而只有gcc4.7才支持C++11, 使用如下办法升级Ubuntu 12.04下的gcc :

 

sudo add-apt-repository ppa:ubuntu-toolchain-r/test 
sudo apt-get update 
sudo apt-get install gcc-4.7 
sudo apt-get install g++-4.7  


    升级完成使用gcc --version 显示版本依然是4.6.3,并没有把4.7版设置为默认Qt编译时调用的/usr/bin/g++ 是个链接文件,把这个文件删除,建立链接到g++-4.7:
cd /usr/bin
sudo rm g++
sudo ln -s g++-4.7 g++

sudo rm gcc
sudo ln -s gcc-4.7 gcc
现在编译并执行例程,ok!编译通过了!

你可能感兴趣的:(ubuntu 12.04)