CentOS6.4 安装配置gcc-4.8.1

来源:互联网 发布:全国中小学数据库 编辑:程序博客网 时间:2024/06/05 08:42
1安装gcc g++yum -y install gcc安装g++
yum -y install gcc-c++
只能安装版本4.4.7 
更新gcc到4.8.1

2,下载gcc 和关联库的源码包:

  •  地址: ftp://gcc.gnu.org/pub/gcc/releases ,选择包之后,用wget下载。
  • 关联包:ftp://gcc.gnu.org/pub/gcc/infrastructure/    
    • mpc
    • mpfr
    • gmp
    • isl
    • cloog
3,编译安装关联库:mpc, mpfr, gmp, isl, cloog。
        ./configure
        make
        make check

        make install
      关联库编译安装完成之后在/usr/local/lib下会生成库文件。在/usr/local/include下会生成.h文件。

4,创建 gcc 编译和安装目录
         $ mkdir objdir                                       #编译运行目录
         $ mkdir /usr/local/gcc-4.8.1                   #编译后头文件存放目录
         $ mkdir /usr/local/gcc                            #编译后bin+lib存放目录

5,开始编译

$cd /.../objdir
     $ gcc源码目录/configure                               #在上面创建的objdir目录执行,切忌在gcc源代码目录执行。
          --prefix=/usr/local/gcc-4.8.1 
          --exec-prefix=/usr/local/gcc 
          --with-gmp=/usr/local 
          --with-mpfr=/usr/local 
          --with-mpc=/usr/local 
          --with-cloog=/usr/local 
          --with-isl=/usr/local 
          --disable-isl-version-check             #gcc-4.8.1 的isl库版本检测程序有bug,无法正确判断isl版本0.11.1
          --enable-threads=posix 
          --enable-languages=c,c++
      完成之后make
      然后 su
      最后 make install

6,关于isl版本检测
      gcc 源码目录下 configure.ac 和 config/isl.m4 文件对 isl 版本判断有bug,只能支持2个字段版本号。需要加入第3个字段。

      http://gcc.gnu.org/ml/gcc/2012-12/msg00202.html
       
      在 configure 时候,可以用 disable-isl-version-check 跳过版本检测。

7,配置后续工作
    # 将 gcc/g++ 改名 
    $ mv /usr/bin/gcc /usr/bin/gcc-4.4.7 
    $ mv /usr/bin/g++ /usr/bin/g++-4.4.7

    
     在/etc/profile.d下创建  custom.sh ,写入环境变量参数。
     export PATH=/usr/local/gcc/bin:$PATH
     export LD_LIBRARY_PATH=/usr/local/lib                     # 可以根据需要加入其他lib搜索目录,/usr/local/gcc/lib 等。
     export C_INCLUDE_PATH=/usr/include
     export CPLUS_INCLUDE_PATH=/usr/include/c++/4.8.1:/usr/include/c++/4.8.1/x86_64-unknown-linux-gnu    
   ln -s /usr/local/gcc-4.8.1/include/c++/4.8.1 /usr/include/c++/4.8.1 # 在 include/c++ 文件夹下添加最新的 c++ 4.8.1 版本(这是个符号链接);

8,测试 helloworld.c
转载http://blog.chinaunix.net/uid-10984648-id-3808697.html