在CentOS 7.2下升级gcc编译器的版本

ADS仿真设计平行定向耦合器学习笔记 ADS仿真设计平行定向耦合器 阅读详情

默认情况下,CentOS 7.2预装的gcc版本是4.8.x,通过执行命令 gcc -v 可以看到,一般情况下这个版本的编译器已经满足需要了,但是某些特殊的时候为了支持C++更高的特性,需要对gcc编译器的版本进行升级,比如安装最新的Mariadb 10的时候,就需要使用高版本的gcc,具体升级过程如下:

  首先去官网下载gcc的高版本安装包,镜像列表是:https://gcc.gnu.org/mirrors.html 进入后选择其中的镜像站,下载gcc即可,我这里要从4.8升级到4.9,所以这里下载的版本是4.9.3 下载地址是:http://fr.mirror.babylon.network/gcc/releases/gcc-4.9.3/ 下载其中的包为:gcc-4.9.3.tar.bz2

  下载之后上传至Linux准备安装,如果此时直接进行编译安装,此时gcc会报出错误:configure: error: Building GCC requires GMP 4.2+, MPFR 2.4.0+ and MPC 0.8.0+. 也就是说安装该版本的GCC 需要GMP 版本 >= 4.2 MPFR版本 >= 2.4.0 MPC版本 >= 0.8.0 这3个依赖缺一不可,并且这3个依赖之间也具有相互依赖关系,即gmp独立安装,mpfr依赖于gmp,mpc依赖于gmp和mpfr,虽然执行gcc目录下的: ./contrib/download_prerequisites 可以解决依赖问题,但是一般国内下载速度比较慢,所以这里手动安装如下三个依赖:

  这三个依赖分别是:gmp,mpfr和mpc,下载地址分别如下:

    gmp:http://ftp.gnu.org/gnu/gmp/

    mpfr(GNU镜像):http://ftp.gnu.org/gnu/mpfr/ 或者官网:http://www.mpfr.org/mpfr-current/

    mpc:http://ftp.gnu.org/gnu/mpc/

  三个软件包具体版本分别是:gmp-5.0.1.tar.gz,mpfr-3.1.5.tar.gz,mpc-1.0.3.tar.gz

  首先安装gmp,命令如下:

复制代码
tar -xvzf gmp-5.0.1.tar.gz
cd gmp-5.0.1/
mkdir temp
cd temp/
../configure --prefix=/usr/local/gmp-5.0.1
make
make install
复制代码

  这样就安装好了,注意:编译时建议指定安装位置,以便后面加载依赖,这里是/usr/local下

  然后安装mpfr,命令如下:

复制代码
tar -xvzf mpfr-3.1.5.tar.gz
cd mpfr-3.1.5/
mkdir temp
cd temp/
../configure --prefix=/usr/local/mpfr-3.1.5 --with-gmp=/usr/local/gmp-5.0.1
make
make install
复制代码

  到这里mpfr安装完毕,并且必须添加--with-gmp导入gmp依赖,如果不加这个参数也会安装成功,但是后面安装GCC会报一个内部依赖的错误,如果这里不加会很麻烦,然后再安装mpc,命令如下:

复制代码
tar -xvzf mpc-1.0.3.tar.gz
cd mpc-1.0.3/
mkdir temp
cd temp/
../configure --prefix=/usr/local/mpc-1.0.3 --with-gmp=/usr/local/gmp-5.0.1 --with-mpfr=/usr/local/mpfr-3.1.5
make
make install
复制代码

  同样一定要加上依赖的参数,现在mpc也安装完毕,然后执行 vim /etc/profile 编辑环境变量配置文件,直接在文件最后添加一行下面的变量:

export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/mpc-1.0.3/lib:/usr/local/gmp-5.0.1/lib:/usr/local/mpfr-3.1.5/lib

  上面的路径要和实际安装时编译的路径一致,保存并退出后,执行 source /etc/profile 使环境变量生效

  最后就可以开始安装gcc了,安装过程如下:

tar -jxvf gcc-4.9.3.tar.bz2
cd gcc-4.9.3/
mkdir output
cd output/
../configure --disable-multilib --enable-languages=c,c++ --with-gmp=/usr/local/gmp-5.0.1 --with-mpfr=/usr/local/mpfr-3.1.5 --with-mpc=/usr/local/mpc-1.0.3

  然后开始编译并且安装:

make -j4
make install

  make过程时间非常长,根据计算机配置不同,时间有所差别,一般来说半个小时到一个多小时都是正常的,因为gcc编译器相对来说还是比较庞大的一个项目的,安装成功之后执行 gcc -v 或者 gcc --version 查看新的版本信息如下:

  

  可以看到,新的gcc版本4.9.3已经生效了,现在gcc升级就完成了


转载地址:https://www.cnblogs.com/freeweb/p/5990860.html

【WRF数据准备】生成 LCZ 对应的FRC_URB2D WRF 静态地理数据准备 阅读详情

相关推荐

LTspice元器件库导入与路径管理:符号、模型、子电路全解析

在电子电路仿真中,元器件库通常由符号、模型和子电路三层构成:符号定义引脚外观,模型描述电气行为,子电路封装多端子网络。理解三者职责边界,是解决 LTspice 元器件库导入报错的关键。许多导入失败并非软件问题,而是文件类型错配、路径引用不清或引脚顺序不一致。掌握 `.include` 指令、用户库搜索路径和自制符号绑定模型,可以提升第三方模型复用效率,降低跨项目迁移成本。该思路适用于运放、MOS 管、二极管等器件建模,尤其在 UA741 等经典运放导入场景中,需要先核对 `.subckt` 引脚顺序,再选择

weixin_29182481的博客 181

加快gcc编译速度

前情 之前一直在windows平台下使用ide开发,idea有热加载,而keil,ccs之类的单片机ide由于固件大小原因,编译速度都还凑合。 等到新公司项目都是linux平台下用的交叉编译器开发,写的makefile也不咋地,一段时间玩下来,编译速度慢的简直不能忍受。 网上一通搜索,基本上通过以下几点 尝试优化 PIMPL(放弃) 使用pimpl(Pointer to Implementation),effective stl 很多书都有介绍,这玩意通过结构体或者类隐藏内部私有数据成员,使用前置声明和指

无人等人的博客 5973

Material Studio 2024安装避坑指南:从证书配置到权限设置的完整解决方案

本文详细解析了Material Studio 2024的安装流程,从环境准备到权限优化的完整解决方案。针对证书配置、系统权限和计算服务等常见问题,提供了12个关键风险点的避坑指南,帮助科研工作者高效完成安装,提升材料模拟工作的效率。

moon9的博客 773

anaconda 配置不同版本cuda方法

方法1:在系统用软连接 方法2:在anaconda中独立设置运行环境 https://bluesmilery.github.io/blogs/a687003b/ 方法3:再尝试是否可以配置anaconda自带的cuda,暂时还不知道怎么弄

LMM_AI的博客 7960

【FPGA】Robei EDA 的使用(7)—— Robei文件上板试验

#沐朝露兮以自华,觅大道兮以求成 我又滚过来了,研究了20多天RISCV,结果最后因为硬件问题导致无法在比赛中使用RISCV CPU,虽然已经临近比赛后期了,非常的崩溃,但是也没有什么办法。唉,一切不过是从头再来罢了。(写写博客舒缓我心中苦闷) ————————————————进入正文的分割线———————————————— 今天介绍一下如何利用 Robei EDA 生成文件,导入vivado中,综合下载到开发板里。拿我一个PWM控制舵机的代码为例。 Robei EDA设置 假设代码模块(model文件)经

Ninquelote的博客 2563

.NET 8 组件之IOC容器组件

NET 8中的IOC容器组件继承了前几代的优良传统,并在性能、扩展性、灵活性等方面进行了诸多优化,使得它在现代应用开发中依然保持领先地位。通过合理使用IOC容器,开发者可以更高效地管理依赖关系,编写更加模块化、可维护的代码。随着.NET生态的不断发展,IOC容器将继续扮演关键角色,为开发者提供强大的依赖管理功能。

hy_4377的博客 1529

GCC编译选项及其优化

url: http://www.syue.com/Linux/HTML/80227.html ---------------------- 大多数程序和库在编译时默认的优化级别是"2"(使用gcc选项:"-O2")并且在Intel/AMD平台上默认按照i386处理器来编译。 如果你只想让编译出来的程序运行在特定的平台上,就需要执行更高级的编译器优化选项,以产生只能运行于特定平台的代码。 一

zjjyliuweijie的专栏 1906

当AI学会写“自传”:OpenClaw 的 SOUL.md 如何把配置文件变成一颗会变形的心

SOUL.md。

步子哥的博客 1309

可持续性踩坑的交叉编译 gcc ./configure 环境变量 及其他

现在遇到一个奇葩问题,交叉编译的时候,先编译完的库在自己的/.lib这种隐藏文件夹下。没有install到我的目录,后面自己编译别的库依赖自己。pkg-config设置地址PKG_CONFIG_LIBDIR到产出的/lib/pkgconfig的文件夹下面 屏蔽上位机的文件。防止Makefile里面搞事情,搜到上位机的库引用进来。下面找/usr/lib和/usr/include。不会用到上位机根目录下的库和头文件了。我觉得可能是和gcc 的–sysroot一样。host 后面跟的是交叉编译器的前缀。

小羊苏C的博客 1711

「JS逆向三百例」JS逆向HIKVISION-视频监控的前端密码加密

本文详细分析了HIKVISION-海康威视监控前端登录过程中密码的加密机制,通过逆向工程解析了其 JavaScript 加密逻辑,重点研究了HIKVISION-海康威视监控的前端密码SHA256加密算法的实现。基于逆向分析结果,使用 Python 模拟了HIKVISION-海康威视监控的登录流程,最终实现了自动化登录功能。本文旨在为安全研究人员提供技术参考,帮助理解前端加密机制,并强调技术研究的合法性和合规性。

布啦啦 1099

uniapp - 解决uni.getLocation定位不准有偏差,定位经纬度不准确有几百米误差、获取地图定位有偏差怎么办,已配置高精确度但依旧不精准(uni.getLocation定位不准如何解决)

uni.getLocation,获取当前的地理位置、速度。已经设置altitude高精度,uniapp API获取定位有差异问题解决,获取定位有几百米偏差,uni.getLocation(OBJECT)中使用默认type ”wgs84“会导致定位不准的问题,gcj02,uni.getLocation地图定位不准,获取经纬度错误偏移了几十公里,经纬度的精确度误差,怎么消除经纬度偏差,解决 uniapp uni.getLocation 定位经纬度不准问题,使用定位不准,定位不准误差问题,解决定位不准问题,高德地

✅ 精选推荐文章 1万+

centos7.9安装node报GLIB的问题

在make -j4时出现下面错误 error: no usable dependency style found。在centos7.9上安装node提示GLIB的错误。查看升级glibc2.28所需编译器的版本号。我们查看安装包内的文件INSTALL。这里以安装GLIBC_2.28为例。

黑夜流星的专栏 920

基于python CNN卷积神经网络模型实现6类别垃圾分类 毕业设计 附完整代码数据

基于python CNN卷积神经网络模型实现6类别垃圾分类 毕业设计 附完整代码数据

1665

gcc版本更新

操作环境 RHEL/Centos 6/7,在进行内核编译时编译器版本,需要升级gcc编译器,选择gcc-7.3.0。 http://ftp.gnu.org/gnu/gcc 里面提供所有的gcc版本供下载。 1、查看当前RHEL/Centos版本: [root@linuxprobe ~]# cat /etc/redhat-release Red Hat Enterprise Linux Server release 7.0 (Maipo) 2、查看现有的gcc版本: [root@linuxprobe ~]

云深海阔专栏 8821

Data-Structures-and-Algorithm-Analysis-in-Java.pdf

作者: Weiss, Mark A. 出版社: Addison Wesley Data Structures and Algorithm Analysis in Java is an “advanced algorithms” book that fits between traditional CS2 and Algorithms Analysis courses. In the old ACM Curriculum Guidelines, this course was known as CS7. This text is for readers who want to learn good programming and algorithm analysis skills simultaneously so that they can develop such programs with the maximum amo...

lwip-2.0.3

lwip是瑞典计算机科学院(SICS)的Adam Dunkels 开发的一个小型开源的TCP/IP协议栈。实现的重点是在保持TCP协议主要功能的基础上减少对RAM 的占用。

在 RHEL/CentOS 7 安装高版本GCC

The GNU Compiler Collection includes front ends for C, C++, Objective-C, Fortran, Ada, and Go, as well as libraries for these languages (libstdc++,…). GCC was originally written as the compiler for the GNU operating system. The GNU system was developed to

weixin_42244181的博客 2109

Statistics and Machine Learning Toolbox

Statistics and Machine Learning Toolbox(带书签),MATLAB统计学习工具

升级python版本命令_CentOS5/6升级Python2.4/2.6到2.7版本教程

原标题:CentOS5/6升级Python2.4/2.6到2.7版本教程当魏艾斯博客写教程的时候,有时候需要Python2.7版本来实现环境搭建,而很多网友还在使用默认的CentOS5/6版本,对应的是Python2.4/2.6版本的。为了让这部分网友能够顺利使用,所以就有了今天的CentOS5/6升级Python2.4/2.6到2.7版本流程。1、检查当前python版本。老魏给测试系统安装的是...

weixin_39788451的博客 782

TMS_WebGMaps_1.9.8.0_Full_Source

TMS_WebGMaps_1.9.8.0_Full_Source 全源码 delphi cbuilder

CentOS7 升级gcc cmake等

操作系统:CentOS Linux release 7.2.1511 (Core) yum install xxx   安装xxx软件 yum info xxx   查看xxx软件的信息 yum remove xxx      删除软件包 yum list 列出软件包 yum clean 清除缓冲和就的包 yum provides xxx

qq_15182185的博客 423

.centos 升级GCC编译器编译安装glibc-2.28

文章目录前言1.centos 升级GCC编译器2.升级make3.编译安装glibc-2.28前言CentOS Linux release 7.3.1611 (Core) 环境安装Mysql8.0.27版本的时候,报错如下: mysqld: /lib64/libc.so.6: versionGLIBC_2.18’ not found (required by /lib64/libstdc++.so.6) 本文详细说明了报错的处理方法1.centos 升级GCC编译器。

joken200898的博客 357

linux升级openssl需要先卸载吗,linux下安装/升级openssl

(2810)(1)安装环境:操作系统:CentOs7OpenSSL Version:openssl-1.0.2j.tar.gz安装:目前版本最新的SSL地址为备注:进入http://www.openssl.org/source/查看最新版本1、将下载的压缩包放在根目录,2、在文件夹下解压缩,命令:tar-xzfopenssl-1.0.2j.tar.gz,得到openssl-1.0.2j文...

weixin_39599372的博客 1413

python2.7升级

centos 是自带Python的。但是版本稍微旧一些。搞python开发,肯定要用新一点的稳定版。所以,要升级一下python。先去python主站下载python的源码包:Python-2.7.5.tar.bz2安装:tar jxvf Python-2.7.5.tar.bz2cd Python-2.7.5./configuremakemake install注意:安装py...

weixin_33995481的博客 96

linux安装python2.7.5_如何在centos6.*的系统中安装Python 2.7.5

现今使用python 2.7.*层出不穷,但是CentOS 6中默认使用的python版本是2.6,因此需要升级相应版本。第一:要确保yum正常使用,如果卸载了默认的python 2.6a.到安装盘的Packages中找到python2.6的rpm包b.执行rpm -Uvh –replacepkgs rpm包名称.rpm 安装原有python版本,使得yum正常工作第二:先安装GCC,用如下命令(...

weixin_42507297的博客 446

centos7:glibc:configure: error: no acceptable C compiler found in $PATH

升级glibc2.31出现的问题: configure: error: in `/root/glibc-2.31/build’: configure: error: no acceptable C compiler found in $PATH 解决办法:安装gcc 有网: yum install gcc 无网: 下载rpm包安装 centos7 gcc4.8

zby枣菠鱼的博客 628
上一篇: CentOS7 图形界面安装
下一篇: Centos7安装多版本gcc
With__Sunshine
博客等级 码龄9年 128粉丝 42原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值