CentOS 6.5 源码编译安装 GCC 7.2.0

一、环境准备

1.1 安装包下载

所有的安装包可在 http://mirror.team-cymru.com/gnu/找到。

GCC 下载地址:GCC7.2.0,三个主要依赖组件下载地址:mpfr-4.0.1mpc-1.0.3gmp-6.1.2

1.2 安装依赖项

使用 yum 安装的依赖项:yum install -y glibc-headers gcc-c++ automake autoconf

对于 gmp, mpfr 和 mpc 三个依赖包,如果想偷懒就使用下面的命令一键安装:

建议使用 yum 自动安装,手动安装麻烦且费时。

这三个组件还可以使用官方提供的安装脚本安装:./contrib/download_prerequisite,比较耗时。

安装 gmp

安装 mpfr

安装 mpc

添加动态库到系统搜索路径

动态库的默认搜索路径都在/etc/ld.so.conf 文件中,这个文件里面包含了/etc/ld.so.conf.d/目录下的所有文件。所以只要在这个目录下创建一个 gcc 的文件作为库的搜索路径就可以了。

二、编译安装

mpc/mpfr/gmp 这三个组件如果使用 yum 安装了,执行./configure 那行时就不用带上后面三个参数了,否则必须手动指定库文件的路径。执行 make install 需要管理员权限。

编译安装十分考验机器的配置,腾讯云 1G1H GCC6.2 用时 1 小时,阿里云 2G1H GCC7.2.0 用时 2.5 小时,本地虚拟机 2G2H GCC7.2.0 用时 4+小时。

安装完成后/usr/local/gcc7 目录下的文件结构:

gccg++ 等可执行文件存放在 bin 目录下,创建软链接即可使用。

三、后续操作

3.1 更新动态库

升级库后,运行程序可能会报一下错误:

解决方案可参考:升级 GCC 后动态库报错 「version 'CXXABI_1.3.9' not found」 的解决办法

发表评论