注意:至于什么是GLIB本篇文章不作赘述。大家在升级GLIB前记得先打个快照,以免升级以后某些程序不能正常运行。本文适用多版本,这里只记录2.18。

背景: 由于某种生产需求,虚拟机的环境为centos6.9,gllib2.12,而程序依赖glib2.18,故本篇文章应运而生了。

环境: centos6.9,GLIB2.12

目标:将centos6.9,GLIB2.12升级到GLIB2.18

ldd --version查看本地GLIB版本

步骤如下:

一、下载GLIB包

curl -O http://ftp.gnu.org/gnu/glibc/glibc-2.18.tar.gz

如果有不能联网的同学,可以在一台可以联网的机器(无系统要求)预下载安装包,然后再SCP到需要升级GLIB的虚拟机即可。

如果有需要升级到其它版本的同学也可以到http://ftp.gnu.org/gnu/glibc/下载其他版本,然后再SCP到需要升级GLIB的虚拟机即可。

二、解压安装包

tar xf glibc-2.18.tar.gz

三、进入GLIB安装包文件夹

cd glibc-2.18

四、开始升级

mkdir build && cd build../configure --prefix=/usr #注意了,别修改路径make -j2 make install

解释:创建build文件夹并进入。执行configure文件,并且指定make install的安装目录为/usr。

configure:检查文件编译的相互依赖关系,并且生成makefile。

--prefix: 指定安装目录。

  • 首先检查机器的一些配置和环境,系统的相关依赖。如果缺少相关依赖,脚本会停止执行,软件安装失败
  • 根据之前检查环境和依赖的结果,生产Makefile文件(main job)

configure执行成功可以看到当前目录下生成如下文件:

当看到Makefile说明环境没问题,可以开始安装了。下面是一些命令的解释。

make:编译源代码并生成可执行文件。

-j2 ( -jn):用make -j带一个参数,可以把项目进行并行编译,比如在一台双核的机器上,可以用make -j4,让make最多允许4个编译命令同时执行,这样可以更有效的利用CPU资源。

解释:

  • make是Unix系统下的一个包。执行make命令需Makefile文件。make会根据Makefile文件中指令来安装软件
  • Makefile文件中有许多标签,来表示不同的section。一般的,make会编译源代码并生成可执行文件,其实Makefile主要就是描述文件编译的相互依赖关系

make install:将make阶段生产的可执行文件拷贝到相应的地方。

相应的地方:configure生成makefile时指定的地方(--prefix所指的地址)。

解释:

  • 当执行make命令不加任何参数,程序就会按照Makefile的指令在相应的section间跳转并且执行相应的命令
  • 加上install参数即执行make install时,程序只会执行install section处的命令。install section的指令会将make阶段生产的可执行文件拷贝到相应的地方。

五、检验一下是否升级成功

ldd --version

看到ldd (GNU libc) 2.18说明已经升级成功了。

如果本文对你有用的话,麻烦点赞收藏转发一波啦~谢谢~~

记一次GLIB2.14升级GLIB2.18的记录以及其中的步骤原理相关推荐

  1. 记一次Ubuntu 14 升级 16的过程和理解(1)do-release-upgrade

    升级前: root@ubuntu:/var/cache/apt/archives# uname -a Linux ubuntu 3.13.0-24-generic #46-Ubuntu SMP Thu ...

  2. 记一次Ubuntu 14 升级 16的过程和理解(1)upgrade

    在线升级,upgrade 之前最好update 一下 update是更新镜像源 upgrade则是对已有的包的卸载重装(升级新一代) 先是将包全部get下来到/var/cache/apt/archiv ...

  3. 蓝的成长记——追逐DBA(14): 难忘的“云”端,起步的hadoop部署

    原创作品,出自 "深蓝的blog" 博客,欢迎转载,转载时请务必注明出处,否则追究版权法律责任. 深蓝的blog:http://blog.csdn.net/huangyanlong ...

  4. gtk linux 升级_Linux包系列的知识(附:Ubuntu16.04升级到18.04的案例)

    Linux包系列的知识(附:Ubuntu16.04升级到18.04的案例) 发布时间:2018-05-27 12:30, 浏览次数:424 , 标签: Linux Ubuntu Linux基础:htt ...

  5. Linux 升级glibc-2.18

    Linux 升级glibc-2.18 [root@node01 ~]wget http://ftp.gnu.org/gnu/glibc/glibc-2.18.tar.gz [root@node01 ~ ...

  6. 心音数据库_小V云端数据库 | 2020.9.14—2020.9.18

    桂花的芬芳 在雨后空气中弥散开来 似为湿润的情绪 赠予了一丝甜蜜 小V云端数据库 2020.9.14-2020.9.18 资讯情报关键词 健康.示范.安全 V宝体检,助力成长 2020年9月14日上午 ...

  7. linux mint 18.3 内核,Linux Mint Linux用户可以升级到18.2 18.3”

    Linux Mint Linux用户可以升级到18.2 18.3"现在应该在造币厂"的技术 Linux Mint的升级路径--从"索尼娅".现在的操作系统是一个 ...

  8. Ubuntu16.04-LTS升级到18.04

    参考此文成功:如何将Ubuntu的版本从16.04升级到18.04 ? 不小心把链接写错了! 注意每一个细节,不要点击错了. Ubuntu 18.04 LTS(Bionic Beaver)即将发布, ...

  9. 如何将lnmp 0.5里面的php5.2.14升级到php 5.3.3???

    如何将lnmp 0.5里面的php5.2.14升级到php 5.3.3??? --------------- 注意:不要百度Google找到的教程发来 那个升级不了::: CentOS5.3的php版 ...

最新文章

  1. result的type属性
  2. 使用Talend Open Studio将数据分步从oracle导入到hive中
  3. linux编译动态库之fPIC
  4. c语言 单词变复数_关于C语言中的Complex(复数类型)和imaginary(虚数类型)
  5. 返回值由hresult变为void型_java高级之泛型
  6. 解放双手---jupyter快捷键
  7. 关于select标签曾经踩过的几个坑!
  8. ab st语言编程手册,PLC编程语言,ST语言秒杀梯形图编程之浮点数计算
  9. EasyRecovery15可靠的数据恢复软件
  10. 解决CAD输出PDF字体周围有边框
  11. Excel利用宏进行VBA编程
  12. 冰冻三尺,非一日之寒。数据解析——xpath(2)
  13. MATLAB中 DCT变换、DCT反变换、分块DCT变换
  14. 邮箱发来的电子发票链接打不开怎么办?显示过期了如何解决?
  15. 如何选择适合你的兴趣爱好(三十三),国画
  16. zookeeper集群在线迁移(扩容)详解
  17. 前端工程师必备的PS技能——切图篇
  18. 移动县公司网络部感受
  19. SAP MM-分包业务讲解(subcontracting)-03-组件发货业务
  20. windows vc2017 环境安装pycrypto 出错解决

热门文章

  1. DEVONthink Pro/Server 3.6.3 中文版 文件管理用具
  2. Interpretability Beyond Feature Attribution: Quantitative Testing with Concept Activation Vectors
  3. 从零开始学习3D可视化之摄像机
  4. mfc下创建html文件,用MFC怎么创建TXT文件并写入数据
  5. Html5网页小游戏
  6. opencv+face_recognition+python实现换脸(face swap)操作(3)——基于普氏分析法(Procrustes Analysis)的代码实现
  7. 【Unity课设】孤岛奇缘 文档 + 源码 + 执行文件(简简单单~)
  8. 未来计算机游戏,未来可追 ROG光刃G15游戏电脑首发登场
  9. 服装制造业的数字化观点体现在哪里?
  10. python向json文件写入中文信息