zoukankan      html  css  js  c++  java
  • 【Linux】-NO.86.Linux.6.C.1.001-【CentOS 7 Install GCC】-

    1.0.0 Summary

    Tittle:【Linux】-NO.86.Linux.6.C.1.001-【CentOS 7 Install GCC】-

    Style:Java

    Series:Log4j

    Since:2017-04-24

    End:2017-05-07

    Total Hours:30+

    Degree Of Diffculty:5

    Degree Of Mastery:5

    Practical Level:5

    Desired Goal:5

    Archieve Goal:3

    Gerneral Evaluation:3

    Writer:kingdelee

    Related Links:

    http://www.cnblogs.com/kingdelee/

     http://blog.csdn.net/hanzheng260561728/article/details/75125891

    http://www.linuxidc.com/Linux/2017-12/149506.htm

    https://www.cnblogs.com/davygeek/p/8018628.html

    http://www.linuxidc.com/Linux/2017-12/149506.htm

    http://www.codeweblog.com/%E7%AC%94%E8%AE%B0-centos%E4%B8%8A%E6%BA%90%E7%A0%81%E5%AE%89%E8%A3%85gcc-4-8-2/

    1.Question

    tar (child): lbzip2: Cannot exec: No such file or directory 
    tar (child): Error is not recoverable: exiting now 
    tar: Child returned status 2 
    tar: Error is not recoverable: exiting now
    

    2.Dispose

    yum -y install bzip2
    

    If have no web:

    tar zxvf bzip2-1.0.6.tar.gz
    cd bzip2-1.0.6/
    #为编译做准备,创建libbz2.so动态链接库(这一步很重要,安装python的时候如果没有这一步,python安装不上bz2模块):
    make -f Makefile-libbz2_so
    make && make install
    

      

      

    3. GCC安装报错,需要以下几个组件  

     https://gcc.gnu.org/gcc-7/

    http://mirrors.concertpass.com/gcc/releases/gcc-7.3.0/

    configure: error: Building GCC requires GMP 4.2+, MPFR 2.4.0+ and MPC 0.8.0+.
    Try the --with-gmp, --with-mpfr and/or --with-mpc options to specify
    their locations.  Source code for these libraries can be found at
    their respective hosting sites as well as at
    ftp://gcc.gnu.org/pub/gcc/infrastructure/.  See also
    http://gcc.gnu.org/install/prerequisites.html for additional info.  If
    you obtained GMP, MPFR and/or MPC from a vendor distribution package,
    make sure that you have installed both the libraries and the header
    files.  They may be located in separate packages.
    

      

    3.1 安装 GMP

    https://gmplib.org/

    https://gmplib.org/download/gmp/gmp-6.1.2.tar.lz

    因为上面是lz的,所以还要下载安装lz解压工具
    
    http://ftp.yzu.edu.tw/nongnu/lzip/lzip-1.19.tar.gz
    
    然后安装(下同)
    
    ./configure
    
    make
    
    make install

      

    安装gmp:
    ./configure
    
    报 m4未安装:
    checking for suitable m4... configure: error: No usable m4 in $PATH or /usr/5bin (see config.log for reasons).
    
    解决 安装m4:
    http://ftp.gnu.org/gnu/m4/
    http://ftp.gnu.org/gnu/m4/m4-1.4.18.tar.gz
    
    对m4
    ./configure
    make 
    make install
    
    对 gmp:
    ./configure
    

    终于成功,继续 make;

    make install

     3.2  安装 MPFR

    http://www.mpfr.org/mpfr-current/#download

    http://www.mpfr.org/mpfr-current/mpfr-4.0.0.tar.gz

     安装(cmm下同: ./configure;make;make install)

     3.3 安装 MPC

    http://ftp.gnu.org/gnu/mpc/

    http://ftp.gnu.org/gnu/mpc/mpc-1.1.0.tar.gz

    cmm

    3.3 安装 isl

    checking for isl 0.15 or later... no
    required isl version is 0.15 or later
    The following languages will be built: c,c++,fortran,lto,objc
    *** This configuration is not supported in the following subdirectories:
         gnattools gotools target-libada target-libhsail-rt target-libgo target-libffi target-liboffloadmic
        (Any other directories should still work fine.)
    checking for default BUILD_CONFIG... bootstrap-debug
    checking for --enable-vtable-verify... no
    /usr/bin/ld: cannot find crt1.o: No such file or directory
    /usr/bin/ld: cannot find crti.o: No such file or directory
    /usr/bin/ld: cannot find -lc
    /usr/bin/ld: cannot find crtn.o: No such file or directory
    collect2: error: ld returned 1 exit status
    configure: error: I suspect your system does not have 32-bit development libraries (libc and headers). If you have them, rerun configure with --enable-multilib. If you do not have them, and want to build a 64-bit-only compiler, rerun configure with --disable-multilib.
    

      

     ftp://gcc.gnu.org/pub/gcc/infrastructure/

    ftp://gcc.gnu.org/pub/gcc/infrastructure/isl-0.18.tar.bz2

    tar -xjf isl-0.18.tar.bz2

    CMM

    4.重回安装 GCC

    在/home/lee/download/gcc-7.3.0新建一个build,在此目录下执行:

    ../configure --prefix=/usr/local/gcc-7.3.0 --enable-checking=release --enable-languages=c,c++,go  --disable-multilib

    export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/lib
    make 4j
    make install

    期间耗时1个多小时+

     

    5.配置

     vim /etc/profile

    source /etc/profile

     

    6.

    配置libstdc++.so.6

    在 build 文件夹里找到 libstdc++.so.* :

    find . -name "libstdc++.so.*" | xargs ls -al

    复制到 /usr/lib64 目录下:

    sudo cp libstdc++.so.6.0.20 /usr/lib64
    sudo ldconfig

    [root@hadoop1 bin]# find / -name gcc
    /home/lee/download/gcc-7.3.0/gcc
    /home/lee/download/gcc-7.3.0/build/gcc
    /usr/bin/gcc
    /usr/lib/gcc
    /usr/libexec/gcc
    /usr/local/gcc-7.3.0/libexec/gcc
    /usr/local/gcc-7.3.0/lib/gcc
    /usr/local/gcc-7.3.0/bin/gcc

      

    /usr/bin

    mv gcc gcc.bak

    mv g++ g++.bak

    ln -s /usr/local/gcc-7.3.0/bin/gcc gcc

    ln -s /usr/local/gcc-7.3.0/bin/g++ g++

    gcc --version

    g++ -version

  • 相关阅读:
    python基础008----Python中类/函数/模块的简单介绍
    linux基础004---用户管理、用户登录注销、系统关机重启
    python基础006----流程控制&推导式&深浅拷贝
    python基础005----字典&集合
    python基础004----列表&元组
    难缠的布隆过滤器,这次终于通透了
    C# 位图BitArray 小试牛刀
    以步步为营的风格解读 Redis分布式锁
    你是不是对MD5算法有误解?
    最适合新手的Redis Cluster搭建过程
  • 原文地址:https://www.cnblogs.com/kingdelee/p/8427888.html
Copyright © 2011-2022 走看看