zoukankan      html  css  js  c++  java
  • [分享栈]centos7安装gcc10.2.0

    1、切换到root账户

    2、安装gcc4.8.5

    yum install -y gcc gcc-c++
    

    gcc1020installgcc485.png

    gcc1020installgcc485finish.png

    3、安装bzip2

    yum install -y bzip2
    

    gcc1020installbzip2.png

    gcc1020installbzip2finish.png

    4、下载gcc10.2.0包

    wget -P /home https://mirrors.aliyun.com/gnu/gcc/gcc-10.2.0/gcc-10.2.0.tar.gz
    

    gcc1020downloadpackage.png

    出现错误:wget: 无法解析主机地址 “mirrors.aliyun.com”,手动修改dns即可;

    5、解压镜像文件

    cd /home && tar -xzvf /home/gcc-10.2.0.tar.gz
    

    gcc1020untarfinish.png

    6、配置依赖项

    cd /home/gcc-10.2.0 && ./contrib/download_prerequisites
    

    gcc1020downloadrequire.png

    这一步可能国内会等待比较久,耐心等待,如果出现error: Cannot download gmp-6.1.0.tar.bz2 from ftp://gcc.gnu.org/pub/gcc/infrastructure/错误,执行

     wget https://gcc.gnu.org/pub/gcc/infrastructure/gmp-6.1.0.tar.bz2
    

    如果报错其他文件不能下载,去https://gcc.gnu.org/pub/gcc/infrastructure/下载对应文件,复制到/home/gcc-10.2.0即可。

    7、创建安装文件夹

    mkdir /usr/lib/gcc/x86_64-redhat-linux/10.2.0
    

    8、创建编译文件夹

    mkdir /home/gcc-build-10.2.0
    cd /home/gcc-build-10.2.0
    

    9、配置安装文件

    ../gcc-10.2.0/configure --prefix=/usr/lib/gcc/x86_64-redhat-linux/10.2.0/ --enable-checking=release --enable-languages=c,c++ --disable-multilib
    

    gcc1020readyfile.png

    gcc1020readyfilefinish.png

    10、执行编译并安装(编译需要2-3小时,请耐心等待)

    make && make install
    

    11、备份原gcc并链接新gcc

    mv /usr/bin/gcc /usr/bin/gcc-4.8.5
    mv /usr/bin/g++ /usr/bin/g++-4.8.5
    alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-4.8.5 88 --slave /usr/bin/g++ g++ /usr/bin/g++-4.8.5
    alternatives --install /usr/bin/gcc gcc /usr/lib/gcc/x86_64-redhat-linux/10.2.0/bin/x86_64-pc-linux-gnu-gcc 99 --slave /usr/bin/g++ g++ /usr/lib/gcc/x86_64-redhat-linux/10.2.0/bin/x86_64-pc-linux-gnu-g++
    alternatives --config gcc
    

    gcc1020backipgcc.png

    gcc1020linknewgcc.png

    12、查询版本

    gcc -v
    g++ -v
    

    gcc1020gccv.png

    gcc1020g++v.png

    13、替换库链接

    如果出现错误:

    /lib64/libstdc++.so.6: version `GLIBCXX_3.4.21' not found
    /lib64/libstdc++.so.6: version `GLIBCXX_3.4.22' not found
    

    执行以下语句,链接新的libstdc++.so.6库文件

    rm -f /usr/lib64/libstdc++.so.6
    ln -s /usr/lib/gcc/x86_64-redhat-linux/10.2.0/lib64/libstdc++.so.6 /usr/lib64/libstdc++.so.6
    

    gcc1020linklib.png

    可以用以下指令查看目前包含哪些库

    strings /usr/lib64/libstdc++.so.6 | grep GLIBC
    

    gcc1020linklibfinish.png

  • 相关阅读:
    什么是PostBack(译)
    GridView 多余字符显示省略号,并在Tooltip中显示完整信息
    GridView中添加行单击事件.md
    ASP.NET WebForm 通过 PagedDataSource 实现 Repeater 的分页
    回发或回调参数无效(译)
    jQuery UI Autocomplete Combobox 配 ASP.NET DropDownList
    6个重要的.NET概念:
    ASP.NET 使用Session,避免用户F5刷新时重复提交(转)
    支持行单击、双击事件的GridView和DataList控件(译)
    在TextBox中敲击回车执行ASP.NET后台事件
  • 原文地址:https://www.cnblogs.com/wulinn/p/13427097.html
Copyright © 2011-2022 走看看