gcc 4.8.1 是第一个全然支持C++11(C++14非常可能在gcc
4.9.0開始支持。)的编译器,Windows上能够安装mingw版的。在sourceforge 上有下载。安装也比較方便。在Linux上安装的话须要首先安装一些依赖库。在Ubuntu12.04 lts默认安装的是gcc4.6.3。事实上该版本号也支持一些c++11的特性。能够通过添加“-std=c++0x" 编译选项来使用这些特性。可是对多线程库的支持较差,gcc 4.8.1 是通过ppa来安装的,因此须要安装ppa repository 。以下就来看一下安装步骤:

首先安装可选的依赖项:(能够用aptitude解决包依赖障碍,下面步骤是可选的

)

sudo apt-get install libgmp-dev

sudo apt-get install libmpfr4 libmpfr-dev

sudo apt-get install libmpc-dev libmpc2

sudo apt-get install libtool

sudo apt-get install m4

sudo apt-get install bison

sudo apt-get install flex

sudo apt-get install autoconf

接下来进入到安装gcc4.8.1 的关键步骤(下面步骤是必须的):

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

# 假设提示须要apt-get install python-software-properties,就运行之!

sudo apt-get update



sudo apt-get install gcc-4.8

sudo apt-get install g++-4.8

sudo apt-get install gcc-4.8-multilib # 或者 sudo aptitude install

sudo apt-get install g++-4.8-multilib # 或者 sudo aptitude install

sudo apt-get install gcc-4.8-doc

sudo update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-4.8 20


sudo update-alternatives --config g++

可选

sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-4.8 20

sudo update-alternatives --config gcc



可选

sudo apt-get update

sudo apt-get upgrade -y

sudo apt-get dist-upgrade

之后就能够使用了,通过使用g++ -v 命令能够查看当前gcc或者g++的版本号, 在我的系统上显演示样例如以下(省略了一些):

......

Thread model: posix

gcc version 4.8.1 (Ubuntu 4.8.1-2ubuntu1~12.04)

......

安装完毕后另一个小问题就是gdb调试器还是比較老的7.4,而一些IDE在生成makefile时。 默认生成的debug版本号都是以-g3或者-g来加入调试信息的。

从gcc4.8開始-g产生的是新的DWARF4格式的调试信息。 不是旧的DWARF2格式。这导致调试程序时gdb无法使用DWARF 4的调试信息从而给调试带来麻烦。

正确解决的方法(暂时)是:把-g或者-g3 改为-gdwarf-2就能够了,使用eclipse cdt的同学要特别注意!

附ubuntu12.04 软件源。 163是比較我一直使用比較快的, 个人感觉比cn99和sohu好点

deb http://mirrors.163.com/ubuntu/ precise main restricted
deb-src http://mirrors.163.com/ubuntu/ precise main restricted
deb http://mirrors.163.com/ubuntu/ precise-updates main restricted
deb-src http://mirrors.163.com/ubuntu/ precise-updates main restricted
deb http://mirrors.163.com/ubuntu/ precise universe
deb-src http://mirrors.163.com/ubuntu/ precise universe
deb http://mirrors.163.com/ubuntu/ precise-updates universe
deb-src http://mirrors.163.com/ubuntu/ precise-updates universe
deb http://mirrors.163.com/ubuntu/ precise multiverse
deb-src http://mirrors.163.com/ubuntu/ precise multiverse
deb http://mirrors.163.com/ubuntu/ precise-updates multiverse
deb-src http://mirrors.163.com/ubuntu/ precise-updates multiverse
deb http://mirrors.163.com/ubuntu/ precise-backports main restricted universe multiverse
deb-src http://mirrors.163.com/ubuntu/ precise-backports main restricted universe multiverse
deb http://mirrors.163.com/ubuntu/ precise-security main restricted
deb-src http://mirrors.163.com/ubuntu/ precise-security main restricted
deb http://mirrors.163.com/ubuntu/ precise-security universe
deb-src http://mirrors.163.com/ubuntu/ precise-security universe
deb http://mirrors.163.com/ubuntu/ precise-security multiverse
deb-src http://mirrors.163.com/ubuntu/ precise-security multiverse
deb http://extras.ubuntu.com/ubuntu precise main
deb-src http://extras.ubuntu.com/ubuntu precise main

版权声明:本文博主原创文章。博客,未经同意不得转载。

Debian/Ubuntu 已安装gcc/g++ 4.8.1的更多相关文章

  1. 列出 Ubuntu 和 Debian 上已安装的软件包

    列出 Ubuntu 和 Debian 上已安装的软件包 如果你经常用 apt 命令,你可能觉得会有个命令像 apt 一样可以列出已安装的软件包.不算全错. apt-get 命令 没有类似列出已安装软件 ...

  2. ubuntu下安装gcc

    在ubuntu下安装gcc 第一次写blog,多多包涵! gcc安装步骤 废话不多说,gcc安装步骤如下: 1. sudo apt update 2. sudo apt install build-e ...

  3. 转:CentOS/Debian/Ubuntu一键安装LAMP(Apache/MySQL/PHP)环境

    CentOS/Debian/Ubuntu一键安装LAMP(Apache/MySQL/PHP) 今天遇到一个网友提到需要在Linux VPS服务器中安装LAMP(Apache/MySQL/PHP)网站环 ...

  4. cygwin安装gcc/g++

    安装cygwin如果按照默认的方式一直点下去的话,安装完了会发现没有安装gcc/g++. 这个时候可以在安装文件的目录打开命令行,并输入: setup-x86_64.exe -q -P wget -P ...

  5. Debian&&ubuntu系安装MegaCli

    MegaCli这个命令可以用来监控raid状态.磁盘状况等,最近上了一批ubuntu系统跑openstack,问题是MegaCli在官网上只有rpm格式的包,没有deb的包,但是还是有办法解决的,rp ...

  6. ubuntu 14.04 gcc/g++版本降低

    Matlab 2014a支持的gcc/g++版本是4.7x,而ubuntu 14.04以及更高版本默认安装的版本都是4.8及以上,因此需要降低gcc/g++版本,方法如下: 1 安装 $ sudo a ...

  7. CentOs下安装gcc/g++/gdb

    使用yum安装gcc:yum install gcc即可.使用:which gcc 查看是否安装成功 使用yum安装g++:yum install gcc-c++ 即可.使用:which g++ 查看 ...

  8. Linux 安装gcc g++

    Linux版本: cat /proc/version Linux version 3.10.0-693.11.6.el7.x86_64 (mockbuild@x86-041.build.eng.bos ...

  9. windows上安装gcc/g++环境(MinGW,msys64等)

    1 前言 经过折腾安装gcc环境,记录一下 2 工具  MinGW安装器: 下载地址1:MinGW官网 下载地址2:SourceForge (MinGW w64) 下载地址3:win-builds-1 ...

随机推荐

  1. Android使用应用程序资源(、颜色数组、尺寸、弦、布尔、整型)

    一.Android资源分类详细解释   1.Android资源类别 Android中的资源分为两大类 : 可直接訪问的资源, 无法直接訪问的原生资源; -- 直接訪问资源 : 这些资源能够使用 R. ...

  2. kafka解释三的具体:发展Kafka应用

    一个.整体外观Kafka 我们知道.Kafka系统有三大组件:Producer.Consumer.broker . producers 生产(produce)消息(message)并推(push)送给 ...

  3. slider使用TickPlacement获得游标效果

    <Slider Name="slider游标效果" Maximum="3" SmallChange="0.25" TickPlacem ...

  4. ORACLE 11G没有备份文件參数文件在异机通过rman备份恢复找回被误删的数据

    背景:          同事误删除线上数据.所以须要从备份中找回数据恢复. 真实屋漏偏逢连夜雨.船迟又遇打头风.前两天备份的磁盘坏块,如今仅仅有rman全备的.bak文件,没有控制文件和參数文件,所 ...

  5. Android开发之使用Handler封装下载图片工具类(源码分享)

    假设每下载一张图片,就得重写一次Http协议,多线程的启动和handler的信息传递就显得太麻烦了,我们直接来封装一个工具类,便于我们以后在开发时随时能够调用. (1)在清单文件加入权限 <us ...

  6. Javascript设计模式系列三

    继承,一个类或对象继承另一个类或对象的三种方法.类式继承.原型式继承.掺元类. 一.类式继承,原型链.Extend函数. <script type="text/javascript&q ...

  7. Json的反序列化 .net Newtonsoft.Json

    项目中有个.json文件. { "instances": [ { "name": "baidu", "url": &qu ...

  8. 北邮iptv用WindowsMediaplayer打不开的解决的方法

    前言:之前我的iptv能够用,可是有次我安装了realplayer,它就偷偷把iptv文件的默认打开方式给篡改了,卸载了                  realplayer之后,iptv不能直接用 ...

  9. Eclipse在Jar形成和应用程序包

    最近的熟悉Java语言.在学习过程中Eclipse经常使用再熟悉它.本文简单说下Jar形成和应用程序包. Java在Jar相当于包C/C++该lib库,它是.class文件打包:经常使用Jar包有AP ...

  10. UVA 1411 - Ants(二分图完美匹配)

    UVA 1411 - Ants 题目链接 题意:给定一些黑点白点,要求一个黑点连接一个白点,而且全部线段都不相交 思路:二分图完美匹配,权值存负的欧几里得距离,这种话,相交肯定比不相交权值小,所以做一 ...