CentOS上升级glibc2.17至glibc2.31

news2024/11/17 17:05:04

 glibc是Linux系统中的重要组件之一。在CentOS中,glibc通常是作为系统的默认C标准库使用的,因为它是许多软件的基础库。在CentOS中,glibc的版本通常与CentOS版本一起发布。因为CentOS通常会优先选择稳定性而不是最新性,所以CentOS使用的glibc版本通常不是很新。

 1.检查linux版本

符合要求,当初安装Linux时安装了有图形界面Gnome

2.检查glibc的版本

版本2.17,需要升级到2.31

3.升级glibc到2.31

3.1下载安装包

3.1解压下载的安装包glibc-2.31.tar.gz

3.2查看安装glibc-2.31的条件并升级相关软件

通过查看INSTALL文件我们可以知道安装glibc2.31的要求,需要binutils版本2.25以上,texinfo版本4.7以上,bison版本2.7以上,sed版本3.02以上,gettext0.10.36以上,Python3.4以上,GDB7.8以上,make版本4.0以上,GCC版本6.2 以上。

3.2.1查看binutils

3.2.2查看textinfo

3.2.3查看bison

3.2.4查看sed

3.2.5查看gettext

3.2.6查看Python并安装Python3.6

Python版本需要升级

查看一下Python版本

发现版本没变,这是因为在/usr/bin中有个python软链接文件仍然指向python2

删除该文件,重新创建一个,指向python3就可以了

3.2.7查看gdb

3.2.8升级make

目前是3.82,需升级,但是升级时需要用到Linux中的编译工具GCC,所以下面就需要下载安装GCC9.3.0

3.2.8.1编译安装gcc并升级

3.2.8.1.1查看gcc是否安装

gcc -v

3.2.8.1.2安装gcc

yum groupinstall -y "Development Tools"

再次查看版本,低于要求

3.2.8.1.3升级gcc

# 下载软件包
wget https://mirrors.aliyun.com/gnu/gcc/gcc-9.3.0/gcc-9.3.0.tar.gz
# 解压依赖包
tar -zxf gcc-9.3.0.tar.gz
cd gcc-9.3.0/
# 下载4个依赖包
./contrib/download_prerequisites
# 预编译
mkdir build
cd build
../configure --enable-checking=release --enable-language=c,c++ --disable-multilib --prefix=/usr/local/gcc

#../configure --enable-checking=release --enable-language=c,c++ --disable-multilib --prefix=/usr
# 查看cpu核数
cat /proc/cpuinfo| grep “processor”| wc -l
# -j4中的数字为cpu核数,及并发工作任务数量,可以提高编译效率,编译时间比较久,我用了几个小时。
make -j4
# 编译安装
make install
# 检查gcc版本
gcc -v

解压

进入解压后的gcc-9.3.0文件夹查看contrib下的download_prerequisites文件,查看gcc所需要的四个依赖

当执行 ./contrib/download_prerequisites 长时间不成功时,按ctrl+C中断

在执行download_prerequisites下载4个依赖包时,因为是从ftp://gcc.gnu.org/pub/gcc/infrastructure/下载,可能下载不下来,可以找替代的下载源,可以预先下载这四个文件

gmp-6.1.0版本:https://ftp.gnu.org/gnu/gmp/gmp-6.1.0.tar.bz2
isl-0.18版本: http://www.mirrorservice.org/sites/sourceware.org/pub/gcc/infrastructure
mpc-1.0.3版本 :https://ftp.gnu.org/gnu/mpc/mpc-1.0.3.tar.gz
mpfr-3.1.4版本:https://ftp.gnu.org/gnu/mpfr/mpfr-3.1.4.tar.gz

拷贝到Linux机器中解压

下载后解压出来的文件夹放在gcc-9.3.0中,并在gcc-9.3.0中创建四个软链接,

ln -s ./mpc-1.0.3 mpc

ln -s ./mpfr-3.1.4 mpfr

ln -s ./gmp-6.1.0 gmp

ln -s ./isl-0.18 isl

然后再执行后面的命令

3.2.8.2升级make到4.3

# 下载软件包
wget https://mirrors.aliyun.com/gnu/make/make-4.3.tar.gz
# 解压
tar -zxf make-4.3.tar.gz
cd make-4.3/
# 预编译
mkdir build
cd build
./configure --prefix=/usr
# -j4中的数字为cpu核数,及并发工作任务数量,可以提高编译效率
make -j4
# 编译安装
make install
# 查看版本
make -v
 

下载软件包

并解压

3.3编译安装glibc2.31

# 下载软件包
wget https://mirrors.aliyun.com/gnu/glibc/glibc-2.31.tar.gz
# 解压
tar -zxvf glibc-2.31.tar.gz
#进入解压后的文件夹glibc-2.31
cd glibc-2.31
# 预编译
mkdir build
cd build
../configure --prefix=/usr --disable-profile --enable-add-ons --with-headers=/usr/include --with-binutils=/usr/bin --disable-sanity-checks --disable-werror
# 编译,需要很长时间
make -j4
# 备份lib64
cp /usr/lib64 /usr/lib64.back
# 安装
make install
# 查看版本
ldd --version

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1692747.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

前端 CSS 经典:图片边框

前言&#xff1a;有这么一个业务&#xff0c;需要边框随着图片宽度的变化而变化&#xff0c;比如一些聊天的气泡框等。 实现原理&#xff1a;使用 border-image 属性 效果图&#xff1a; 实现代码&#xff1a; <!DOCTYPE html> <html lang"en"><he…

java抽象类,接口,枚举练习题

第一题&#xff1a; 答案&#xff1a; class Animal{//成员变量protected String name;protected int weight;//构造方法public Animal(){this.name"refer";this.weight50;}public Animal(String name,int weight){this.namename;this.weightweight;}//成员方法publ…

基于Android Studio记事本系统

目录 项目介绍 图片展示 运行环境 获取方式 项目介绍 具有登录&#xff0c;注册&#xff0c;记住密码&#xff0c;自动登录的功能&#xff1b; 可以新增记事本&#xff0c;编辑&#xff0c;删除记事本信息&#xff0c;同时可以设置主标题&#xff0c;内容&#xff0c;以及…

【网络】为什么udp协议报头有长度字段,而tcp没有

引言&#xff1a; 在网络通信中&#xff0c;UDP&#xff08;用户数据报协议&#xff09;和TCP&#xff08;传输控制协议&#xff09;是两种常用的传输层协议。它们在设计和功能上有一些不同之处&#xff0c;其中之一就是报头中的长度字段。本文将深入探讨UDP和TCP协议中长度字…

LLM——探索大语言模型在心理学方面的应用研究

1. 概述 心理学经历了多次理论变革&#xff0c;目前人工智能&#xff08;AI&#xff09;和机器学习&#xff0c;特别是大型语言模型&#xff08;LLMs&#xff09;的使用&#xff0c;预示着新研究方向的开启。本文详细探讨了像ChatGPT这样的LLMs如何转变心理学研究。它讨论了LL…

LangChain笔记

很好的LLM知识博客&#xff1a; https://lilianweng.github.io/posts/2023-06-23-agent/ LangChain的prompt hub: https://smith.langchain.com/hub 一. Q&A 1. Q&A os.environ["OPENAI_API_KEY"] “OpenAI的KEY” # 把openai-key放到环境变量里&…

元宇宙虚拟线上会议,可应用于哪些行业和领域?

随着科技的飞速进步和互联网的广泛普及&#xff0c;线上元宇宙会议以其独特的魅力和优势&#xff0c;逐渐崭露头角&#xff0c;积木易搭旗下的元宇宙数字营销平台——视创云展&#xff0c;为线上元宇宙会议提供了全方位的服务&#xff0c;不仅涵盖了场景搭建、数字人互动、在线…

超简单白话文机器学习 - 回归树树剪枝(含算法介绍,公式,源代码实现以及调包实现)

1. 回归树 1.1 算法介绍 大家看到这篇文章时想必已经对树这个概念已经有基础了&#xff0c;如果不是很了解的朋友可以看看笔者的这篇文章&#xff1a; 超简单白话文机器学习-决策树算法全解&#xff08;含算法介绍&#xff0c;公式&#xff0c;源代码实现以及调包实现&#x…

小程序checkbox改成圆形与radio样式保持一致

修改前 修改后 html: <view class"agreement"><checkbox value"{{ isAgreed }}" bind:tap"toggleCheckbox" /><text>我同意室外智能健身房 <text class"link" bind:tap"showUserProtocol">用户协…

【C++】继承(二)深入理解继承:派生类默认成员函数与友元、静态成员的奥秘

目录 派生类的默认成员函数①派生类的构造函数②派生类的拷贝构造函数③派生类的赋值构造④派生类的析构函数 继承与友元继承与静态成员 前言 我们在上一章讲解了: 继承三部曲&#xff0c;本篇基于上次的基础继续深入了解继承的相关知识&#xff0c;欢迎大家和我一起学习继承 派…

Python小游戏——打砖块

文章目录 打砖块游戏项目介绍及实现项目介绍环境配置代码设计思路代码设计详细过程 难点分析源代码代码效果 打砖块游戏项目介绍及实现 项目介绍 打砖块游戏是一款经典的街机游戏&#xff0c;通过控制挡板来反弹小球打碎屏幕上的砖块。该项目使用Python语言和Pygame库进行实现…

牛客NC392 参加会议的最大数目【中等 贪心+小顶堆 Java/Go/PHP 力扣1353】

题目 题目链接&#xff1a; https://www.nowcoder.com/practice/4d3151698e33454f98bce1284e553651 https://leetcode.cn/problems/maximum-number-of-events-that-can-be-attended/description/ 思路 贪心优先级队列Java代码 import java.util.*;public class Solution {/**…

纽曼新品X1000:轻巧便携仅重9.9公斤的1度电应急电源

在户外救援行动和应急设备中&#xff0c;电力供应的稳定性和安全性直接影响到救援工作的效率和成功率。在现代救援工作中&#xff0c;常见的光学声波探测仪、通信联络设备、气象检测仪、生命探测仪、照明设备等装备均需有持续的电力供应&#xff0c;才能保障救援工作的有序开展…

一文带你搞懂DiT(Diffusion Transformer)

节前&#xff0c;我们组织了一场算法岗技术&面试讨论会&#xff0c;邀请了一些互联网大厂朋友、今年参加社招和校招面试的同学。 针对大模型技术趋势、大模型落地项目经验分享、新手如何入门算法岗、该如何准备面试攻略、面试常考点等热门话题进行了深入的讨论。 总结链接…

Redis 源码学习记录:集合 (set)

无序集合 Redis 源码版本&#xff1a;Redis-6.0.9&#xff0c;本篇文章无序集合的代码均在 intset.h / intset.c 文件中。 Redis 通常使用字典结构保存用户集合数据&#xff0c;字典键存储集合元素&#xff0c;字典值为空。如果一个集合全是整数&#xff0c;则使用字典国语浪费…

java图书电子商务网站的设计与实现源码(springboot+vue+mysql)

风定落花生&#xff0c;歌声逐流水&#xff0c;大家好我是风歌&#xff0c;混迹在java圈的辛苦码农。今天要和大家聊的是一款基于springboot的图书电子商务网站的设计与实现。项目源码以及部署相关请联系风歌&#xff0c;文末附上联系信息 。 项目简介&#xff1a; 图书电子商…

pikachu-Unsafe Filedownload

任意点击一个图片进行下载&#xff0c;发现下载的url。 http://127.0.0.1/pikachu/vul/unsafedownload/execdownload.php?filenamekb.png 构造payload&#xff1a; 即可下载 当前页面的源码&#xff0c;可以进行路径穿越来下载一些重要的配置文件来获取信息。 http://127.0.…

《书生·浦语大模型实战营》第一课 学习笔记:书生·浦语大模型全链路开源体系

文章大纲 1. 简介与背景智能聊天机器人与大语言模型目前的开源智能聊天机器人与云上运行模式 2. InternLM2 大模型 简介3. 视频笔记&#xff1a;书生浦语大模型全链路开源体系内容要点从模型到应用典型流程全链路开源体系 4. 论文笔记:InternLM2 Technical Report简介软硬件基础…

光电直读抄表技术详细说明

1.技术简述 光电直读抄表是一种智能化智能计量技术&#xff0c;主要是通过成像原理立即载入电度表里的标值&#xff0c;不用人工干预&#xff0c;大大提升了抄表效率数据可靠性。此项技术是智慧能源不可或缺的一部分&#xff0c;为电力公司的经营管理提供了有力的适用。 2.原…

在winnas中使用docker desktop遇到的问题及解决方法记录

最近在尝试从群晖转向winnas&#xff0c;一些简单的服务依然计划使用docker来部署。群晖的docker简单易用且稳定&#xff0c;在win上使用docker desktop过程中遇到了不少问题&#xff0c;在此记录一下以供后来人参考。 一、安装docker desktop后启动时遇到无法启动docker引擎 …