共计 1020 个字符,预计需要花费 3 分钟才能阅读完成。
本站提供 Linux 服务器运维,自动化脚本编写等服务,如有需要请联系博主微信:xiaozme
背景
测试环境有一台 CentOS 6 系统,需要搭建安卓编译环境,但是发现安卓 SDK 要求 glibc 最低版本为 2.14
,CentOS 6 默认是2.12
的版本,记录下 glibc 升级过程。升级前请将服务器备份,生产环境不建议操作。
编译 glibc 2.14
查看 glibc 系统版本库,可以使用命令:
strings /lib64/libc.so.6 |grep GLIBC_
接下来下载 glibc 2.14 并升级:
# 下载源码包
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
修改软连接
# 先删除原来的软连接
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 是系统底层的依赖库,升级前请做好相关备份操作,升级有风险,升级出错请自行承担责任。此文部分内容参考了:
正文完
星哥玩云-微信公众号