zoukankan      html  css  js  c++  java
  • Linux编译安装GCC

    1. 下载gcc和其依赖包,并按照以下顺序安装,其中--prefix可以根据自己的情况设置路径

     1)下载:ftp://ftp.gnu.org/gnu/gmp/gmp-5.0.1.tar.bz2 

    ./configure --prefix=/usr/local/gmp
    make && make install

    2)下载:http://ftp.gnu.org/gnu/mpfr/mpfr-3.1.2.tar.gz 
    ./configure --prefix=/usr/local/mpfr --with-gmp=/usr/local/gmp
    make && make install

    3)下载:ftp://ftp.gnu.org/gnu/mpc/mpc-1.0.2.tar.gz
    ./configure --prefix=/usr/local/mpc --with-gmp=/usr/local/gmp -with-mpfr=/usr/local/mpfr
    make && make install

    4)下载:http://ftp.gnu.org/gnu/gcc/ 
    ./configure --enable-checking=release --enable-languages=c,c++ --disable-multilib --with-gmp=/usr/local/gmp --with-mpfr=/usr/local/mpfr --with-mpc=/usr/local/mpc --prefix=/usr/local/gcc
    make -j
    make install

    2. 可能遇到的问题

    1)问题:

    ../../gcc-aarch64-sve-acle-branch/gcc/hwint.h:62:5: error: #error "Unable to find a suitable type for HOST_WIDE_INT"
        #error "Unable to find a suitable type for HOST_WIDE_INT"
         ^
    In file included from ../../gcc-aarch64-sve-acle-branch/gcc/hash-table.h:243:0,
                     from ../../gcc-aarch64-sve-acle-branch/gcc/coretypes.h:441,
                     from ../../gcc-aarch64-sve-acle-branch/gcc/c/c-lang.c:23:
    ../../gcc-aarch64-sve-acle-branch/gcc/statistics.h:25:2: error: #error GATHER_STATISTICS must be defined
     #error GATHER_STATISTICS must be defined

    解决办法:去除CPLUS_INCLUDE_PATH设置

    export CPLUS_INCLUDE_PATH=

     2)问题:

    configure: error: `CC' has changed since the previous run:
    configure: former value: `x86_64-redhat-linux-gcc'
    configure: current value: `/home/lixuezd/local/gcc/./gcc/xgcc -B/home/lixuezd/local/gcc/./gcc/ -B/home/lixuezd/local/gcc/x86_64-redhat-linux/bin/ -B/home/lixuezd/local/gcc/x86_64-redhat-linux/lib/ -isystem /home/lixuezd/local/gcc/x86_64-redhat-linux/include -isystem /home/lixuezd/local/gcc/x86_64-redhat-linux/sys-include'
    configure: warning: ignoring whitespace changes in `CFLAGS' since the previous run:
    configure: former value: `-g -O2'
    configure: current value: `-g -O2 '
    configure: error: `build_alias' has changed since the previous run:
    configure: former value: `x86_64-unknown-linux-gnu'
    configure: current value: `x86_64-redhat-linux'
    configure: error: in `/home/lixuezd/local/gcc/fixincludes':
    configure: error: changes in the environment can compromise the build
    configure: error: run `make distclean' and/or `rm ./config.cache' and start over
    make[1]: *** [configure-fixincludes] Error 1
    make[1]: Leaving directory `/home/lixuezd/local/gcc'
    make: *** [all] Error 2

    解决方法:

    删掉gcc源码,重新建立gcc后再执行 ./configure .....,或者执行:make disclean和rm ./config.cache命令,我看着麻烦,还是 rm -fr gcc最简单。
    
    这里要提的就是,如果配置发生了更新,如果没有清空上一次的结果,可能会遇上这个问题。
  • 相关阅读:
    Flink1.9重大改进和新功能
    【2020】DBus,一个更能满足企业需求的大数据采集平台
    大数据运维:大数据平台+海量数据
    大数据运维尖刀班 | 集群_监控_CDH_Docker_K8S_两项目_腾讯云服务器
    离线数仓和实时数仓架构与设计
    【全集】IDEA入门到实战
    Mysql快速入门
    RabbitMQ安装
    消息队列MQ简介
    C#特性
  • 原文地址:https://www.cnblogs.com/haiyang21/p/10828134.html
Copyright © 2011-2022 走看看