当前位置: 首页 > news >正文

centos7升级glibc2.28

1 概述

centos7自带的glibc对于某些软件是太旧的,决定将glibc升级至2.28。


2 安装过程

2.1 下载glibc源码

mkdir -p /opt/third-party && cd /opt/third-party
wget http://ftp.gnu.org/gnu/glibc/glibc-2.28.tar.gz
tar -xf glibc-2.28.tar.gz
cd glibc-2.28

2.2 查看glibc的INSTALL文件所描述的依赖

该文件描述了依赖软件的版本要求,例如gcc和make的版本。

vim INSTALL

在这里插入图片描述


2.3 升级gcc工具链

依据INSTALL文件,4.9 <= gcc <= 8.1.1。本文使用gcc 7.3.1,make 4.2.1。
在这里插入图片描述
安装gcc7工具链可参考文章:

https://blog.csdn.net/nangonghen/article/details/132258014

2.4 修改test-installation.pl文件

如果不修改此文件,make install过程中会出现ldd:找不到nss_test2。

vim scripts/test-installation.pl

在文件的128行新增$name ne “nss_test2”,如下图所示:
在这里插入图片描述

2.5 正式编译安装

mkdir -p build
cd build../configure \
--prefix=/usr \
--disable-profile \
--enable-add-ons \
--with-headers=/usr/include \
--with-binutils=/usr/bin \
--enable-obsolete-nslmake -j 10
make localedata/install-locales -j 10
make install -j 10

说明:
如果执行configure命令是不带enable-obsolete-nsl参数,make install过程会有出现报错:undefined reference to '_nsl_default_nss@GLIBC_PRIVATE

2.6 安装结果

在这里插入图片描述
在这里插入图片描述

3 小结

编译过程有时不是一帆风顺,依据出现的错误不断地调整命令和文件,最终都能编译出你想要的软件。

http://www.lryc.cn/news/121416.html

相关文章:

  • 腾讯云香港服务器租用_2核2G20M_2核4G30M
  • 十三、ESP32PS2摇杆(ADC)
  • 网络安全的相关知识点
  • 算法练习(6):牛客在线编程06 递归/回溯
  • C#使用OpenCv(OpenCVSharp)图像局部二值化处理实例
  • MySQL多表关联查询
  • flutter开发实战-CustomClipper裁剪长图帧动画效果
  • CSS 中的优先级规则是怎样的?
  • 概率图模型(Probabilistic Graphical Model,PGM)
  • Oracle 知识篇+会话级全局临时表在不同连接模式中的表现
  • MySQL 数据库文件的导入导出
  • 找不到资产文件project.assets.json
  • 【python】python将json字符串导出excel | pandas处理json字符串保存为csv
  • opencv 基础54-利用形状场景算法比较轮廓-cv2.createShapeContextDistanceExtractor()
  • 分布式系统理论
  • Gartner发布2023年的存储技术成熟曲线
  • c++ 有元
  • 安卓:网络框架okhttp
  • Python爬虫 爬取图片
  • 【云原生】Pod详讲
  • 先进先出的队
  • 怎样学会单片机
  • 数据结构笔记--常见二叉树分类及判断实现
  • docker小白第二天
  • 【变形金刚03】使用 Pytorch 开始构建transformer
  • 「Web3大厂」价值70亿美元的核心竞争力
  • 前端发送请求和后端springboot接受参数
  • 程序一直在阿里云服务器运行
  • Linux 文件与目录管理
  • 【CSS】CSS 布局——弹性盒子