Ubuntu12.04升级C++11标准

版权声明:如需转载,请告知博主并声明出处 https://blog.csdn.net/CLinuxF/article/details/82978801

参考博客:
http://my.oschina.net/zenglingfan/blog/169564

一、问题分析
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

如果add-apt-repository提示 add-apt-repository: command not found

请查看我这篇博客:https://blog.csdn.net/CLinuxF/article/details/82978519

三、编译程序指令
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'

如果要马上生效可以执行命令:

source ~/.bashrc

四、升级gdb7.6步骤
4.1 下载链接gdb7.6安装包
http://ftp.gnu.org/gnu/gdb/gdb-7.6.1.tar.bz2

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++

#include <iostream>
using namespace std;
int main(){
int iarr[5] = {14, 53, 66, 71, 13}; 
for (int arr : iarr) 	
	cout << arr << endl;
}

猜你喜欢

转载自blog.csdn.net/CLinuxF/article/details/82978801