(六) 更新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进入构建目录

[ghui@StuOS glibc-2.14]$ mkdir build  

[ghui@StuOS glibc-2.14]$ cd build  

4、运行configure配置,make&& sudo  make install

1. [ghui@StuOS build]$ ../configure --prefix=/opt/glibc-2.14  

2. [ghui@StuOS build]$ make -j4   

3. [ghui@StuOS build]$ sudo make install  

5、临时修改环境变量

1. [ghui@StuOS bin]$ export LD_LIBRARY_PATH=/opt/glibc-2.14/lib:$LD_LIBRARY_PATH  

6、修改软连接。

这里要注意,更新系统里的链接(我的是/lib64/libc.so.6) 很容易出错,我不清楚有没有更好的办法,一般都是删除旧链接,建立新链接。但删除旧链接后,很多命令直接不能用了,因为此时中不到glibc的库了。这个时候就需要临时指定一个glibc库,方法如下(libc.so改个名以便好以后更新的其他版本区分):

1. [ghui@StuOS bin]$ cp/opt/glibc-2.14/lib/libc-2.14.so /lib64/libc-2.14.so

2. [ghui@StuOS bin]$ rm–f /lib64/libc.so.6

3. [ghui@StuOS bin]$ LD_PRELOAD=/lib64/libc.so.6ln -s /lib64/libc-2.14.so /lib64/libc.so.6

4. [ghui@StuOS bin]$strings /lib64/libc.so.6 |grep GLIBC


猜你喜欢

转载自blog.csdn.net/glongljl/article/details/80156243
今日推荐