(六) 更新glibc版本
glibc版本太低,造成个别脚本会执行报错,如下错误
1、查看系统glibc支持的版本
strings /lib64/libc.so.6 |grep GLIBC_
可以看到最高只支持2.12版本,所以考虑编译解决这个问题:
2、到http://ftp.gnu.org/gnu/glibc/下载最新glibc版本
我这里下载了glibc-2.14.tar.xz这个版本,解压到任意目录准备编译
这里解压到/home/VMdisks/glibc-2.14/
3、在glibc源码目录建立构建目录,并cd进入构建目录
[[email protected] glibc-2.14]$ mkdir build
[[email protected] glibc-2.14]$ cd build
4、运行configure配置,make&& sudo make install
1. [[email protected] build]$ ../configure --prefix=/opt/glibc-2.14
2. [[email protected] build]$ make -j4
3. [[email protected] build]$ sudo make install
5、临时修改环境变量
1. [[email protected] bin]$ export LD_LIBRARY_PATH=/opt/glibc-2.14/lib:$LD_LIBRARY_PATH
6、修改软连接。
这里要注意,更新系统里的链接(我的是/lib64/libc.so.6) 很容易出错,我不清楚有没有更好的办法,一般都是删除旧链接,建立新链接。但删除旧链接后,很多命令直接不能用了,因为此时中不到glibc的库了。这个时候就需要临时指定一个glibc库,方法如下(libc.so改个名以便好以后更新的其他版本区分):
1. [[email protected] bin]$ cp/opt/glibc-2.14/lib/libc-2.14.so /lib64/libc-2.14.so
2. [[email protected] bin]$ rm–f /lib64/libc.so.6
3. [[email protected] bin]$ LD_PRELOAD=/lib64/libc.so.6ln -s /lib64/libc-2.14.so /lib64/libc.so.6
4. [[email protected] bin]$strings /lib64/libc.so.6 |grep GLIBC