在centos上安装最新的glibc

本文介绍了如何在CentOS上逐步更新glibc到最新版本,包括安装GCC 8、g++ 8、cmake 3、ninja、gnu make和GNU 'binutils'等依赖。虽然不建议直接更新glibc,以防引发不兼容问题,但通过遵循特定步骤,可以在/opt目录下安装新版本以避免冲突。如果选择不更新,可能会遇到由于as、ld、make工具过旧导致的错误。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

centos上的glibc的远古版本:

root@:~/clickhouse/ClickHouse/build# ldd --version
ldd (GNU libc) 2.17
Copyright (C) 2012 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
Written by Roland McGrath and Ulrich Drepper.

7年前的,真古老。

先安装 gcc 8, g++ 8, cmake 3, ninja ,参考这篇博客:在CentOS/Debian/Ubuntu上编译安装最新版 GCC 8 , cmake 3 和ninja
再更新gnu make 和GNU ‘binutils’ (as and ld),参考这篇博客:在CentOS/Debian/Ubuntu上编译安装最新版gnu make 和GNU ‘binutils’ (as and ld)

下载,编译,安装:

wget https://ftp.gnu.org/gnu/libc/glibc-2.29.tar.gz
tar -xvzf glibc-2.29.tar.gz
mkdir  glibc-build
cd  glibc-build
../glibc-2.29/configure  --prefix=/opt/glibc-2.29 
make -j4
make install

注意:我不推荐你手动更新glibc,不安全


之所以安装在 opt目录下,是因为其他的旧的程序可能会需要旧的glibc。
使用方法:

export LD_LIBRARY_PATH="/opt/glibc-2.29/lib${LD_LIBRARY_PATH:+:$LD_LIBRARY_PATH}"
ldd --version

参考:upgrade - How to update glibc to 2.14 in CentOS 6.5 - Unix & Linux Stack Exchange


不更新的话会报错:

configure: error: 
*** These critical programs are missing or too old: as GNU ld make
*** Check the INSTALL file for required versions.

这里说了因为as GNU ld make这4个工具太古老了,需要进行更新。
参考这篇博客:在CentOS/Debian/Ubuntu上编译安装最新版gnu make 和GNU ‘binutils’ (as and ld)


评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值