centos 7升级gcc到10.2.0
2024-10-19 21:21:54
安装gcc
由于 Linux 操作系统的自由、开源,在其基础上衍生出了很多不同的 Linux 操作系统,如 CentOS、Ubuntu、Debian 等。这些 Linux 发行版中,大多数都默认装有 GCC 编译器(版本通常都较低)。
1、查看是否含有gcc及gcc版本
可以看到,系统中包含了gcc且版本为4.8.5,如果没有gcc,可以通过下面命令来进行安装
2、快速安装gcc
yum -y install gcc
yum -y install gcc-c++
通过如上命令得到的gcc通常版本较低。
3、升级gcc
升级gcc需要在系统中包含一个低版本的gcc
准备升级环境
1、下载gcc源码包
https://mirrors.aliyun.com/gnu/gcc/
2、解压并切换到解压后的目录(作者将他放在了/usr/local目录下)
tar -zxvf gcc-10.2.0.tar.gz
cd gcc-10.2.0/
3、下载编译依赖项
./contrib/download_prerequisites
执行完毕后,可以发现gcc-10.2.0的目录中多了gmp、isl、mpc、mpfr,如果没有这些依赖包,则不能进行下面的操作。
4、新建gcc-bulid目录(与gcc-10.2.0同级)并进入该目录中。
mkdir gcc-build
cd gcc-build/
5、生成Makefile文件
../gcc-10.2.0/configure -prefix=/usr/local --enable-checking=release --enable-languages=c,c++ --disable-multilib
这时候会出现报错:
checking for the correct version of gmp.h... no configure: error: Building GCC requires GMP 4.2+, MPFR 3.1.0+ and MPC 0.8.0+.
解决办法
yum -y install gmp gmp-devel mpfr mpfr-devel libmpc libmpc-devel
这时候在运行命令就成功了
../gcc-10.2.0/configure -prefix=/usr/local --enable-checking=release --enable-languages=c,c++ --disable-multilib
6、开始编译
make
注意:编译时间较长,请选择适当的时间进行此操作。
7、安装
make install
8、重启
9、验证
最新文章
- ASP.NET MVC5+EF6+EasyUI 后台管理系统(36)-文章发布系统③-kindeditor使用
- Devexpress TextAnnotation
- 关于angularjs中ajax请求php接口参数个是转换的问题
- 阿里云服务器mysql修改编码问题
- MultiCardMenu
- pl/sql developer 中文字段显示乱码
- Java程序版权保护解决方案
- 使用cmake安装mysql5.5.13
- Design Pattern Chain of Reponsibility 责任链模式
- JavaScript+svg绘制的一个动态时钟
- 主席树——求区间第k个不同的数字(向右密集hdu5919)
- wireshark过滤器
- Linux 操作系统镜像下载
- Vuex的学习笔记一
- Haskell语言学习笔记(91)Comprehension Extensions
- 图片按日期分类和查看程序(WPF开发)(附源码)
- vue 数据请求
- SOA:A note on RPC
- Android Studio:正确导入SO相关文件
- 关于ASP.NET中Request.QueryString的乱码问题(转)
热门文章
- efficient c++核心点
- 玩遍博客网站,我整理了 Hugo 及其流行的风格主题
- plsql连接oracle出现问题总结
- Project facet Java version 1.7 is not supported.解决方法
- 微信小程序:标签字符串直接变成标签来显示要通过富文本技术
- 前端与后端之间参数的传递与接收和@RequestBody,@Requestparam,@Param三个注解的使用
- java帝国的诞生
- Codeforces (ccpc-wannafly camp day2) L. Por Costel and the Semipalindromes
- Docker搭建HAproxy+tomcat 实现高可用
- c++:一个辅助类让内存泄漏现原形!