http://blog.youkuaiyun.com/officercat/article/details/39520227
libc.so.6是一个软连接,当前的glibc是2.12版本,我遇到的事GLIBC_2.15找不到的问题,所以需至少升级到2.15
首先,从网上下载glibc 2.15的rpm安装包,但这个不容易,因为.rpm针对的是centOS和redhat,高版本安装包很少见。也可以直接从其他系统上好一个编译好的文件
libc.so.6(对应glibc 2.15或者更高的),不过最保险的方式就是下载源代码在本地编译一次(有的人实在编译不成功,那也只能从别的地方找一份了)
各个版本的glibc可以从http://ftp.gnu.org/gnu/glibc/找,包括其插件glibc-port
最新到2.20,我保守的选择2.15
对于低版本glibc,还有glibc-linuxthreads-2.x需要编译,可参考很多网上文档,但2.15没有,所以不用了
- wget http://ftp.gnu.org/gnu/glibc/glibc-2.15.tar.gz
- wget http://ftp.gnu.org/gnu/glibc/glibc-ports-2.15.tar.gz
- tar -xvf glibc-2.15.tar.gz
- tar -xvf glibc-ports-2.15.tar.gz
- mv glibc-ports-2.15 glibc-2.15/ports
- mkdir glibc-build-2.15
- cd glibc-build-2.15
- ../glibc-2.15/configure --prefix=/usr --disable-profile --enable-add-ons --with-headers=/usr/include --with-binutils=/usr/bin
- make
- make install
- [usr@linux glibc-build-2.15]$ strings libc.so | grep GLIBC
LD_PRELOAD=/****/glibc-build-2.15/libc.so (你刚才装的目录)
[usr@linux lib64] rm -f /lib64/libc.so.6
[usr@linux lib64] cp /****/glibc-build-2.15/libc.so /lib64/libc-2.15.so (一定要注意这一步) 这步之前最好看看LD_PRELOAD是否能用或者执行上面的步骤
[usr@linux lib64] LD_PRELOAD=/lib64/libc-2.15.so ln -s /lib64/libc-2.15.so lib64/libc.so.6
[usr@linux lib64] strings /lib64/libc.so.6 | grep GLIBC