zoukankan      html  css  js  c++  java
  • Centos6.X 手动升级gcc

    操作环境 CentOS6.5 64bit,gcc原版本为4.4.7,不能支持C++11的特性,所以需要升级

    [root@zengxj ~]# wget http://ftp.gnu.org/gnu/gcc/gcc-6.1.0/gcc-6.1.0.tar.gz
    [root@zengxj ~]# tar -zvxf gcc-6.1.0.tar.gz --directory=/usr/local/
    [root@zengxj ~]# cd /usr/local/gcc-6.1.0
    [root@zengxj gcc-6.1.0]# ./contrib/download_prerequisites
    [root@zengxj gcc-6.1.0]# mkdir build && cd build
    [root@zengxj build]# ../configure -enable-checking=release -enable-languages=c,c++ -disable-multilib 
    [root@zengxj build]# make 
    [root@zengxj build]# make install
    
    # 替换原来的gcc版本
    [root@zengxj build]# update-alternatives --install /usr/bin/gcc gcc /usr/local/bin/x86_64-pc-linux-gnu-gcc 40
    [root@zengxj build]# mv /usr/bin/gcc /usr/bin/gcc.bak
    [root@zengxj build]# ln -s /usr/local/bin/x86_64-pc-linux-gnu-gcc /usr/bin/gcc
    
    # 重启
    [root@zengxj build]# reboot
    

     在执行程序出现 "/lib64/libstdc++.so.6: version `GLIBCXX_3.4.21' not found" 的情况,可能是已安装过高版本的gcc但是未软连接

    解决方法:查找编译gcc时生成的最新动态库

    find / -name "libstdc++.so*"
    
    cd /usr/lib64
    ll stdlibc++*
    

    这时可以看到当前libstdc++.so.6指向13的版本,接下来将刚刚的高版本的复制到这里并重建软链即可

    rm libstdc++.so.6
    ln -s libstdc++.so.6.0.22 libstdc++.so.6
    
  • 相关阅读:
    基于蓝牙的安卓客户端开发
    在word文档中添加上角标和下角标
    vs2008打开类视图,看不到类的解决方法
    容器vector 迭代器iterator 应用
    next_permutation()
    pair运用
    vector学习
    容器之vector
    指针 * &
    派生类中的构造函数和析构函数
  • 原文地址:https://www.cnblogs.com/xi-jie/p/10593235.html
Copyright © 2011-2022 走看看