CentOS 7 手动编译 GCC 11.1.0
1.背景
昨天购买了1核2GB的云耀服务器(Hyper Elastic Cloud Server,HECS),打算搞个hexo博客。发现编译hexo需要高版本的gcc,而使用centos的指令默认安装的gcc版本是4.5,无法满足最低版本要求。所以打算自己更新一下。PS:如果有更好的更新方式,请留言告知一下,多谢。
2.下载安装包
GCC 是 the GNU Compiler Collection 的缩写,即GNU编译器集合。GCC 包括了C、C++、Objective-C、Go等语言的编译器前端,是一个完全开源的工具。
官网:https://gcc.gnu.org/
GCC官网通过提供网站镜像的方式提供下载。
这里使用的镜像是 concertpass。
下载:
curl http://mirrors.concertpass.com/gcc/releases/gcc-11.1.0/gcc-11.1.0.tar.gz | tar xz
3.下载编译依赖
当我们进入GCC目录,运行
./configure
会报错,有gmp、mpfr、mpc等依赖没有安装。这三个包存在依赖关系,需要先后安装。
GNU所需要的公共库有自己的下载网站,即https://gcc.gnu.org/pub/gcc/infrastructure/
安装gmp
gmp 是 the GNU multiple
precision arithmetic library 的缩写,是GNU倍数精度算术库。
下载:
curl https://gcc.gnu.org/pub/gcc/infrastructure/gmp-6.1.0.tar.bz2 | tar xj
进入目录编译并安装:
./configure
make install
安装mpfr
mpfr 是 the Multiple Precision
Floating-Point Reliable Library 的缩写,是倍数浮点可靠库(尬翻)。
下载:
curl https://gcc.gnu.org/pub/gcc/infrastructure/mpfr-3.1.4.tar.bz2 | tar xj
进入目录编译并安装:
./configure
make install
安装mpc
mpc 是 the Multiple Precision Complex
Arithmetic Library 的缩写,是倍数复数精度运算库。
下载:
curl https://gcc.gnu.org/pub/gcc/infrastructure/mpc-1.0.3.tar.gz | tar xz
进入目录编译并安装:
./configure
make install
安装isl
下载:
curl https://gcc.gnu.org/pub/gcc/infrastructure/isl-0.18.tar.bz2 | tar xj
进入目录编译并安装:
./configure
make install
编译并安装GCC
需要先配置(这里创建了一个新目录gcc-output用于配置的输出存储):
mkdir gcc-output
cd gcc-output
../gcc-11.0.1/configure
配置是为了根据当前计算机平台的软硬件环境生成相应的make文件。
编译:
make BOOT_CFLAGS='-O' bootstrap
使用 BOOT_CFLAGS=’-O’ 参数可以减少编译时的日志等文件的输出,节省40%的空间。
(买的时单核处理器,编译很耗时,如果是多核处理器可以使用-j4参数并行处理,4表示4核数)
安装:
make install
注意
需要先使用命令安装好旧版本gcc和g++,编译时需要用到。
yum install gcc gcc-c++
- 点赞
- 收藏
- 关注作者
评论(0)