中文
注册
我要评分
文档获取效率
文档正确性
内容完整性
文档易理解
在线提单
论坛求助
鲲鹏小智

GCC升级

目的

CentOS 7.6操作系统默认GCC版本为4.8.5,glibc版本为2.17。由于软件编译依赖GCC和glibc编译器版本,在虚拟机内升级版本对一些程序的性能有一定优化。

方法

建议虚拟机操作系统里的GCC、glibc版本升级到如下表参考版本。

编译器

版本

下载链接

GCC

7.3.0及以上

https://ftp.gnu.org/gnu/gcc/

glibc

2.27

https://ftp.gnu.org/gnu/libc/

  1. 下载上述软件包到“/home”目录。
    1
    2
    3
    4
    5
    6
    cd /home
    wget https://ftp.gnu.org/gnu/gcc/gcc-7.3.0/gcc-7.3.0.tar.gz
    wget https://ftp.gnu.org/gnu/libc/glibc-2.27.tar.gz
    wget https://ftp.gnu.org/gnu/gmp/gmp-6.1.2.tar.bz2
    wget https://ftp.gnu.org/gnu/mpc/mpc-1.0.3.tar.gz
    wget http://isl.gforge.inria.fr/isl-0.18.tar.bz2
    
  2. 安装gmp。
    1
    2
    3
    4
    5
    6
    cd /home
    tar -xvf /home/gmp-6.1.2.tar.bz2
    cd /home/gmp-6.1.2
    ./configure --prefix=/usr/local/gmp-6.1.2
    make -j
    make install
    
  3. 安装mpfr。
    1
    2
    3
    4
    5
    6
    cd /home
    tar -zxvf mpfr-3.1.5.tar.gz
    cd /home/mpfr-3.1.5
    ./configure --prefix=/usr/local/mpfr-3.1.5 --with-gmp=/usr/local/gmp-6.1.2
    make -j
    make install
    
  4. 安装mpc。
    1
    2
    3
    4
    5
    6
    cd /home
    tar -zxvf mpc-1.0.3.tar.gz
    cd /home/mpc-1.0.3
    ./configure -prefix=/usr/local/mpc-1.0.3 -with-gmp=/usr/local/gmp-6.1.2 -with-mpfr=/usr/local/mpfr-3.1.5
    make -j
    make install
    
  5. 安装isl。
    1
    2
    3
    4
    5
    6
    7
    cd /home
    tar -xvf /home/isl-0.18.tar.bz2
    cd /home/isl-0.18
    yum -y install gmp-devel
    ./configure --prefix=/usr/local/isl-0.18 --with-gmp=/usr/local/gmp-6.1.2
    make
    make install
    
  6. 安装GCC(以7.3.0为例)。
    1
    2
    3
    4
    5
    6
    7
    8
    cd /home
    tar -zxvf gcc-7.3.0.tar.gz
    cd /home/gcc-7.3.0
    ./configure --prefix=/usr/local/gcc-7.3.0 --enable-languages=c,c++,fortran --enable-shared --enable-linker-build-id --without-included-gettext --enable-threads=posix --disable-multilib --disable-nls --disable-libsanitizer --disable-browser-plugin --enable-checking=release --build=aarch64-linux  --with-gmp=/usr/local/gmp-6.1.2 --with-mpfr=/usr/local/mpfr-3.1.5 --with-mpc=/usr/local/mpc-1.0.3  --with-isl=/usr/local/isl-0.18
    export LD_LIBRARY_PATH=/usr/local/mpc-1.0.3/lib:/usr/local/gmp-6.1.2/lib:/usr/local/mpfr-3.1.5/lib:/usr/local/gcc-7.3.0/lib64:/usr/local/isl-0.18/lib:/usr/local/lib:/usr/lib:$LD_LIBRARY_PATH
    export PATH=/usr/local/gcc-7.3.0/bin:$PATH
    make -j
    make -j install
    
  7. 配置环境变量。

    在/etc/profile文件中添加如下环境变量:

    1
    2
    export LD_LIBRARY_PATH=/usr/local/mpc-1.0.3/lib:/usr/local/gmp-6.1.2/lib:/usr/local/mpfr-3.1.5/lib:/usr/local/gcc-7.3.0/lib64:/usr/local/isl-0.18/lib:/usr/local/lib:/usr/lib:$LD_LIBRARY_PATH
    export PATH=/usr/local/gcc-7.3.0/bin:$PATH
    
  1. 使环境变量生效。
    1
    source /etc/profile
    
  2. 检查GCC版本。
    1
    gcc -v
    

  3. 安装glibc。
    1
    2
    3
    4
    5
    6
    cd /home
    tar -zxvf glibc-2.27.tar.gz
    cd glibc-2.27
    /home/glibc-2.27/configure --prefix=/usr/local/glibc-2.27
    make -j
    make install
    
  4. 配置环境变量。

    在/etc/profile文件中添加如下环境变量

    1
    export PATH=/usr/local/glibc-2.27/bin:$PATH
    
  1. 使环境变量生效。
    1
    source /etc/profile
    
  2. 检查glibc版本。
    1
    ldd --version
    

    若升级GCC版本至7.3.0,可以在CFLAGS和CPPFLAGS里面增加编译选项-march=armv8-a来使用鲲鹏处理器所兼容的armv8指令集。

    若升级GCC版本至9.1.0以上,可额外增加编译选项-mtune=tsv110,指定使用tsv110流水线。

搜索结果
找到“0”个结果

当前产品无相关内容

未找到相关内容,请尝试其他搜索词