CentOS 6升级glibc记录

2022-08-13 16:43:16 浏览数 (1)

背景

测试环境有一台CentOS 6系统,需要搭建安卓编译环境,但是发现安卓SDK要求glibc最低版本为2.14,CentOS 6默认是2.12的版本,记录下glibc升级过程。升级前请将服务器备份,生产环境不建议操作。

编译glibc 2.14

查看glibc系统版本库,可以使用命令:

代码语言:javascript复制
strings /lib64/libc.so.6 |grep GLIBC_

接下来下载glibc 2.14并升级:

代码语言:javascript复制
#下载源码包
wget http://ftp.gnu.org/gnu/glibc/glibc-2.14.tar.gz
#解压
tar -xvf glibc-2.14.tar.gz
#进入源码目录
cd glibc-2.14
#创建编译目录并进入
mkdir build && cd build 
#编译glibc
../configure --prefix=/usr/local/glibc-2.14
make && make install

修改软连接

代码语言:javascript复制
#先删除原来的软连接
rm -rf /lib64/libc.so.6
#建立新的软连接
ln -s /usr/local/glibc-2.14/lib/libc-2.14.so /lib64/libc.so.6
#如果系统命令不可用,执行:
LD_PRELOAD=/usr/local/glibc-2.14/lib/libc-2.14.so  ln -s /usr/local/glibc-2.14/lib/libc-2.14.so /lib64/libc.so.6
#如果更新失败,执行还原:
LD_PRELOAD=/lib64/libc-2.12.so ln -s /lib64/libc-2.12.so /lib64/libc.so.6
#解决升级后中文显示乱码的问题
cp /usr/lib/locale/locale-archive /usr/local/glibc-2.14/lib/locale/locale-archive
#解决时区不正确的问题
ln -sf /etc/localtime /usr/local/glibc-2.14/etc/localtime

最后

glibc是系统底层的依赖库,升级前请做好相关备份操作,升级有风险,升级出错请自行承担责任。此文部分内容参考了:

  • 分享Centos6.5升级glibc过程
  • 为xgboost搭建环境,升级glibc,gcc,和解决升级glibc之后的中文乱码问题

0 人点赞