zoukankan      html  css  js  c++  java
  • Linux升级安装GCC G++ 6.2

    使用yum安装是不可能了,各大仓库也没有,只能自己编译安装了。

    系统为CentOS 6.5,gcc为4.4.7

    1 下载源代码包

    当前最新版为6.2:
    wget http://ftp.gnu.org/gnu/gcc/gcc-6.2.0/gcc-6.2.0.tar.bz2

    也可以自行下载其他版本http://ftp.gnu.org/gnu/gcc

    2 解压

    tar jxf gcc-6.2.0.tar.bz2

    3 下载编译依赖

    cd gcc-6.2.0
    ./contrib/download_prerequisites

    经过漫长的等待,速度太慢了~

    4 生成Makefile文件

    先建一个编译的目录
    mkdir gcc-build-6.2.0
    cd gcc-build-6.2.0/
    ../configure -enable-checking=release -enable-languages=c,c++ -disable-multilib

    5 编译

    make -j4
    4表示使用4个核心,根据你的CPU来指定。也可不指定任何参数。

    6 安装

    sudo make install

    7 验证

    gcc -v
    还有原来的版本,重启后,再验证OK

    8 测试

    写个测试的程序测试一下:

    g++ -std=c++11 -o testCpp11  testCpp11.cpp

    顺利编译成功,执行./testCpp11提示:
    ./testCpp11: /usr/lib64/libstdc++.so.6: version `GLIBCXX_3.4.14' not found (required by ./testCpp11)
    ./testCpp11: /usr/lib64/libstdc++.so.6: version `GLIBCXX_3.4.15' not found (required by ./testCpp11)
    ./testCpp11: /usr/lib64/libstdc++.so.6: version `GLIBCXX_3.4.21' not found (required by ./testCpp11)
    看来动态库并没有更新。

    9 更新动态库

    查看动态库的版本:
    strings /usr/lib64/libstdc++.so.6 | grep GLIBC

    GLIBCXX_3.4
    GLIBCXX_3.4.1
    GLIBCXX_3.4.2
    GLIBCXX_3.4.3
    GLIBCXX_3.4.4
    GLIBCXX_3.4.5
    GLIBCXX_3.4.6
    GLIBCXX_3.4.7
    GLIBCXX_3.4.8
    GLIBCXX_3.4.9
    GLIBCXX_3.4.10
    GLIBCXX_3.4.11
    GLIBCXX_3.4.12
    GLIBCXX_3.4.13
    确实没有更新,默认情况下,会安装在如下目录:
    /usr/local/lib64/libstdc++.so.6.0.22

    简单了,将原来的库替换为上面的就可以了:
    rm -rf /usr/lib64/libstdc++.so.6
    ln -s /usr/local/lib64/libstdc++.so.6.0.22 /usr/lib64/libstdc++.so.6

    然后再查看动态库的版本:

    strings /usr/lib64/libstdc++.so.6 | grep GLIBC
    结果
    GLIBCXX_3.4.22
    
    这就是刚刚安装的版本,再执行一下测试程序./testCpp11,成功!


  • 相关阅读:
    easyUI之tree
    MSSQL索引优化
    MongoDB学习笔记(一) MongoDB介绍及安装
    项目经理必备的11种人际关系技能
    http协议详细介绍
    ERP存储过程
    UVA1339 UVALive3213 POJ2159 ZOJ2658 Ancient Cipher【密码】
    UVA1588 UVALive3712 POJ3158 Kickdown
    UVA1588 UVALive3712 POJ3158 Kickdown
    UVA10340 POJ1936 ZOJ1970 All in All【字符串匹配】
  • 原文地址:https://www.cnblogs.com/furzoom/p/7710163.html
Copyright © 2011-2022 走看看