Ubuntu12.04升级C++11标准
参考博客:
一、问题分析
Ubuntu默认apt-get安装的版本好像是4.6,需要首先把g++版本安装到g++4.8.安装完后要更新gdb7.6,安装gdb7.6是因为g++升级到4.8后会导致与12.04默认的gdb7.4不兼容(使用gdb –version可查看gdb版本)
二、安装g++ 4.8指令
sudo add-apt-repository ppa:ubuntu-toolchain-r/test
sudo apt-get update
sudo apt-get install gcc-4.8
sudo apt-get install g++-4.8
3.1 安装g++4.8后执行此命令编译C++11标准程序
g++-4.8 -std=c++11 -o [RunName] [ProgramName]
简易编译指令g++ -o [RunName] [ProgramName]
3.2 所以需要修改bashrc文件,如下:
sudo vim ~/.bashrc
末尾添加:
# using C++ 11
alias g++='g++-4.8 -std=c++11'
四、
升级gdb7.6步骤
4.1 下载链接gdb7.6安装包
4.2 解压进入目录执行指令:
./configure
4.3 执行完毕可生成:Makefile文件,再执行指令:
make
sudo make install
4.4 如果安装时报错: no termcap library found; 则需安装相关依赖程序:
sudo apt-get install texinfo libncurses5-dev
五、 测试升级是否成功
下本人测试C++11环境的方式是使用foreach循环,也就是foreach需要C++11标准才去更新C++
int iarr[5] = {14, 53, 66, 71, 13};
for (int arr : iarr)
cout << arr << endl;