编译gcc源码

环境:VMware Workstation+ubuntu18.04

#指令步骤:
apt-get install gcc  #安装gcc
apt-get install g++  #安装g++
apt install make     #安装make

wget https://mirrors.tuna.tsinghua.edu.cn/gnu/gcc/gcc-11.2.0/gcc-11.2.0.tar.xz   #下载gcc源码
tar -xvf gcc-11.2.0.tar.xz    #解压gcc源码
cd gcc-11.2.0    #进入gcc目录
./contrib/download_prerequisites    #下载配置gcc编译依赖文件

#配置gcc
./configure --prefix=/home/gcc11/ --enable-checking=release --enable-bootstrap --enable-languages=c,c++  --disable-multilib    
make -j4        #编译,耗时很长
make install    #安装
ln -s /home/gcc11/bin/gcc /usr/bin/gcc12 #链接

gcc12 -v    #查看版本

下面是具体说明:

一、准备

1.安装gcc和g++
apt-get install gcc
apt-get install g++

不安装g++运行./configure --prefix=/home/gcc11/ --enable-checking=release...配置时会报如下错误。

configure: error: *** A compiler with support for C++11 language features is required.

本次系统默认安装的gcc版本是:gcc version 7.5.0 (Ubuntu 7.5.0-3ubuntu1~18.04)

2.安装make

在编译gcc源码时提示没有make指令,所以可以提前安装一下。

apt install make
3.下载配置gcc源码

源码下载地址(根据需求选择版本):https://mirrors.tuna.tsinghua.edu.cn/gnu/gcc

本次以gcc-11.2.0为例:https://mirrors.tuna.tsinghua.edu.cn/gnu/gcc/gcc-11.2.0/

可以用浏览器直接下载gcc-11.2.0.tar.xz或者命令行用wget下载。浏览器下载速度较快。

下载后解压进入gcc-11.2.0文件夹执行./contrib/download_prerequisites等待下载gcc编译依赖文件。

wget https://mirrors.tuna.tsinghua.edu.cn/gnu/gcc/gcc-11.2.0/gcc-11.2.0.tar.xz
tar -xvf gcc-11.2.0.tar.xz
cd gcc-11.2.0
./contrib/download_prerequisites    

如下所示依赖文件下载成功。

二、配置编译gcc

1.配置gcc

./configure -h可以查看参数说明

--prefix=PREFIX --prefix后跟执行make install安装路劲,没有该参数默认 [/usr/local]

--enable-languages 支持编译语言

配置可以调用gcc -v参考系统默认安装的gcc配置。

./configure --prefix=/home/gcc11/ --enable-checking=release --enable-bootstrap --enable-languages=c,c++  --disable-multilib
2.编译gcc
make -j4

make -h可以查看:-j后跟同时编程任务数量,可以设置为cpu逻辑内核数。

-j [N], --jobs[=N] Allow N jobs at once; infinite jobs with no arg.

为了缩短编译时间可以将VMware Workstation虚拟机 的处理器内核数设置到最大值。

注:最大值由电脑处理器型号决定。

3.安装gcc
make install
4.设置链接

设置为gcc12是为了不影响系统安装的gcc,使两个版本可以共存。

ln -s /home/gcc11/bin/gcc /usr/bin/gcc12

至此gcc编译安装结束可以运行gcc12 -v查看版本

gcc12 -v是查看自己编译的gcc

gcc -v是查看系统安装的gcc

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值