zoukankan      html  css  js  c++  java
  • Debian/Ubuntu 已安装gcc/g++ 4.8.1

      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

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

  • 相关阅读:
    NOIP模拟测试2「排列 (搜索)·APIO划艇」
    Linux运维基础
    Linux之权限详解
    Linux之特殊符号与正则表达式
    Linux之命令进阶
    Linux分区的几种方案
    开启MySQL远程访问权限 允许远程连接
    Linux命令
    win10 激活(亲测可用)
    帮你解决无法早起的焦虑-顺便撸羊毛
  • 原文地址:https://www.cnblogs.com/bhlsheji/p/4890159.html
Copyright © 2011-2022 走看看