zoukankan      html  css  js  c++  java
  • RHEL6.4编译安装gcc4.8.1

      因为平时用的linux虚拟机都是RHEL6.4, 自带的gcc版本号太低,不支持C++11,而从gcc4.8.1開始, gcc完美支持C++11全部特性。

    故升级了一下。

    以下是具体步骤:

    1. 下载这4个安装包, gcc, gmp, mpfr, mpc.
      http://ftp.tsukuba.wide.ad.jp/software/gcc/releases/gcc-4.8.1/gcc-4.8.1.tar.bz2
      ftp://ftp.gnu.org/gnu/gmp/gmp-4.3.2.tar.bz2 
      http://www.mpfr.org/mpfr-2.4.2/mpfr-2.4.2.tar.bz2
      http://www.multiprecision.org/mpc/download/mpc-0.8.1.tar.gz

    2. 解压缩gcc包
       tar jxvf gcc-4.8.1.tar.bz2

    3. 解压缩其他三个包
       这3个包在gcc-4.8.1/contrib/download_prerequisites中有指定。
        tar jxf gmp-4.3.2.tar.bz2
        tar jxf mpfr-2.4.2.tar.bz2
        tar zxf mpc-0.8.1.tar.gz
        mv gmp-4.3.2 gcc-4.8.1/gmp
        mv mpc-0.8.1 gcc-4.8.1/mpc
        mv mpfr-2.4.2 gcc-4.8.1/mpfr
      放在一起后。就不用再单独编译这三个包了。这也是download_prerequisites中的做法。仅仅只是它用的是软链接来实现。

    4. 開始编译 
      gcc的编译不能直接在源文件文件夹下进行,而是须要建立一个新的文件夹。在它以下进行编译。优点是编译过程中生成的编译文件不会影响源文件的内容。假设编译失败或者须要又一次编译新版本号。仅仅须要删除这个新建的文件夹就可以。
      mkdir gcc-4.8.1-build
      cd gcc-4.8.1-build/
      ../gcc-4.8.1/configure --prefix=/usr/local/gcc-4.8.1 --enable-languages=c,c++ --enable-checking=release --disable-multilib
      编译选项说明:--prefix指定gcc要安装到的路径,将来make install会安装到此指定目录。

    假设採取默认路径的话。可能会覆盖系统当前的gcc。

    假设想保留旧的gcc,须要设置--prefix參数。

    由于仅仅用到C。C++。故仅仅指定了这两种语言。mulitlib用于同一时候生成多个平台的代码。比方64 bit平台中。能够同一时候生产32 bit和64 bit两种格式。


      make -j2       (本人机器为双核)

    5. 安装
      make install

    6. 验证
      gcc -v

      编译程序时,可能须要加上-std=c++11或者-std=c++0x才干通过。

    比如:  g++ 123.cpp -o 123 -std=c++11

  • 相关阅读:
    Js面向对象
    JavaScript:this是什么?
    vs2010 连接 oracle 11g
    Oracle 数据库 数据文件 表 表空间 用户的关系
    消息推送
    Zookeeper's Bug
    hadoop启动之后没有namenode和secondarynamenode
    大数据zookeeper connect time out
    Silverlight中需要用到模板选择器(DataTemplateSelector)的替代方案
    当SQL Server数据库遇到Oracle数据交互接口
  • 原文地址:https://www.cnblogs.com/mengfanrong/p/5259806.html
Copyright © 2011-2022 走看看