centos7物理机升级内核
一、源码安装gcc12.2.0
1、先安装wget
[root@localhost ~]# yum -y install wget
2、下载gcc12.2.0
[root@localhost ~]# wget http://ftp.gnu.org/gnu/gcc/gcc-12.2.0/gcc-12.2.0.tar.gz
3、安装gcc所需的编译环境
安装gcc-c++编译环境,要不然后面make gcc 12.2.0会报错
[root@localhost ~]# yum -y install gcc-c++
4、安装gcc所需的依赖包
执行下面这条命令,获取安装gcc所需要的依赖项,当然你也可以在这里:https://ftp.gnu.org/gnu/找到gmp mpfr mpc这几个包,下载后解压放入gcc根目录下:
当运行./contrib/download_prerequisites这个命令后,可能会报bzip2找不到,这是因为没有安装bzip的解压,安装即可。
[root@localhost ~]# tar -zxf gcc-12.2.0.tar.gz
[root@localhost ~]# yum -y install bzip2
[root@localhost ~]# cd gcc-12.2.0
[root@localhost gcc-12.2.0]# ./contrib/download_prerequisites
5、开始编译gcc源码
[root@localhost gcc-12.2.0]# ./configure --prefix=/usr/local/gcc-12.2.0 --enable-bootstrap --enable-checking=release --enable-languages=c,c++ --disable-multilib
[root@localhost gcc-12.2.0]# make -j 4
[root@localhost gcc-12.2.0]# make install
# 这里解释下各参数代表的意思
# –-enable-languages表示你要让你的gcc支持哪些编程语言
# -–disable-multilib表示编译器不编译成其他平台的可执行代码;
# -–disable-checking表示生成的编译器在编译过程中不做额外检查
# –-enable-checking=xxx 表示编译过程中增加XXX检查
# –prefix=/usr/local/gcc-12.2.0 指定安装路径
# –enable-bootstrap 表示用第一次编译生成的程序进行第二次编译,然后用再次生成的程序进行第三次编译,并且检查比较第二次和第三次结果的正确性,也就是进行冗余的编译检查工作。 非交叉编译环境下,默认已经将该值设为 enable,可以不用显示指定;交叉编译环境下,需要显示将其值设为 disable。
# 编译时间安装大约2小