1、正常安装
安装步骤是根据网上流传下来的方法。1 (这里我直接copy了啊)
1.下载所需资源
http://ftp.gnu.org/gnu/glibc/glibc-2.9.tar.bz2
http://ftp.gnu.org/gnu/glibc/glibc-linuxthreads-2.5.tar.bz2
2.解压缩
tar -jxvf glibc-2.9.tar.bz2
tar -jxvf …/glibc-linuxthreads-2.5.tar.bz2
(注:这里要将glibc-linuxthreads-2.5解压到 glibc-2.9.tar.bz2里面)
3.配置编译
mkdir glibc_bulid
cd glibc_bulid/
…/configure --prefix=/usr --disable-profile --enable-add-ons --with-headers=/usr/include --with-binutils=/usr/bin
make
make install
4.检验
ll /lib/libc.so.6
strings /lib/libc.so.6 | grep “GLABC”
2、遇到的问题
按照大佬的方法我成功在我的笔记本上更新了glibc的版本,但是到了公司更新就出了问题
- 在make的时候报错
libc_pic.os: relocation R_X86_64_PC32 against `__init_array_end’ can not be used when making a shared object; recompile with -fPIC
这个问题在网上查是编译的的时候没有带-fPIC参数的原因,解决方法:
step1 清掉之前编译出来的文件
make clean
step2 修改配置文件,编辑config.make
在第96行添加-fPIC(我的版本是这里)
step3 保存,重新编译,然后回到正轨
- 在检验过程中发现libc.so.6的软连接并没有更新
- 首先先看一下当前libc.so.6软连接的地方,以免一会儿如果错了恢复不了
- 如果make成功,会在操作编译的文件夹下生成一个libc.so.6的软连接和一个libc.so文件的
- 这时修改下/lib/libc.so.6软连接的地址到这上面就行了
S5林风 《Redhat5中glibc2.5升级到glibc2.9》 https://blog.csdn.net/yunlianglinfeng/article/details/53171191 ↩︎