后端技术操作系统维护

CentOS7 安装高版本gcc

2019-11-28  本文已影响0人  爱折腾的大懒猪

下载源码

在官方可以找到各个发行版,

gcc发行版

官方下载速度较慢(提供的镜像最近的日本镜像更慢,建议用国内镜像 (如上海交大镜像gcc)

PS: gcc镜像在GNU镜像内, 例如清华GNU镜像, 上海交大镜像,USTC镜像等.

# 下载源码, 这里是USTC的
wget https://mirrors.ustc.edu.cn/gnu/gcc/gcc-7.5.0/gcc-7.5.0.tar.gz
# 解压
tar -xzf gcc-7.5.0.tar.gz
cd gcc-7.5.0

# 下载依赖库源码
./contrib/download_prerequisites
### 上面一步也可以用yum来实现, 如下, 二选一.
sudo yum install  gmp  gmp-devel  mpfr  mpfr-devel  libmpc  libmpc-devel
# 使用下载方法会从官方下载gmp, mpfr, mpc和isl 几个工具的源码.
# 下载后会解压相应包, 但貌似没有进行编译安装? 反正我没有进去编译也可以. 
# 如果实在不行, 可以进入相应包进行编译, 例如
# cd isl-0.15 && ./configure && make && make install

编译安装

进行一般的编译. 注意, 安装gcc也是需要先有旧版本的gcc,g++的.

mkdir build
cd build
# 指定gcc7安装地址,指定所需安装语言,不支持32位 disable-multilib
../configure --prefix=/usr/local/gcc-7.5 --enable-checking=release --enable-languages=c,c++,fortran,go --disable-multilib 
make -j 4 && make install 

整个安装时间较长, 几十分钟到一小时. 去喝口茶吃点东西吧~


如果编译遇到这个问题:
./a.out: /lib64/libstdc++.so.6: version `GLIBCXX_3.4.21’ not found (required

find / -name "libstdc++.so*" 找到这个这个目录下面的libstdc++.so.6.0.xx, 例如24.

find / -name "libstdc++.so*"
# /usr/local/lib64/libstdc++.so.6.0.24
cp /usr/local/lib/libstdc++.so.6.0.24 /usr/lib
ldconfig

Reference

  1. 官方安装说明页面: https://gcc.gnu.org/install/index.html
  2. CSDN: CentOS 7.0 系统安装gcc/g++ 7.3
上一篇 下一篇

猜你喜欢

热点阅读