centos 升级 glibc

/lib/libc.so.6: version `GLIBC_2.7' not found (required by your program or library name)

这就说明RedHat上glibc版本过低

升级glibc,首先到http://ftp.gnu.org/gnu/glibc/下载glibc-libidn-2.7.tar.bz2和glibc-linuxthreads-2.5.tar.bz2,下载说安装步骤:
1)    新建一个临时文件夹/home/mytmp
2)    解压glibc-libidn-2.7.tar.bz2到mytmp目录中,/home/mytmp/glibc-2.7
3)    解压linuxthreads-2.5.tar.bz2到glibc-2.7目录中,分别为/home/mytmp/glibc-2.7/linuxthreads和/home/mytmp/glibc-2.7/linuxthreads/linuxthreads_db
4)    命令行切换到mytmp目录下,如已在该目录下无需切换
5)    执行命令export CFLAGS="-g -O2 -march=i486"
6)    执行命令glibc-2.7/configure --prefix=/usr --disable-profile --enable-add-ons --with-headers=/usr/include --with-binutils=/usr/bin --disable-sanity-checks
7)    执行make
8)    执行make install
9)    使用命令ls -l /lib/libc.so.6查看是否升级成功
lrwxrwxrwx 1 root root 11 Nov 12 09:24 /lib/libc.so.6 -> libc-2.7.so
注:网上说的直接下载libstdc++.so.6.10或libstdc++.so.6.13的库来修改软链接指向是不可靠的,如需更高版本可参照本文中方法升级到更高版本,现在基本最高就是2.7了
安装编译过程中需要注意三点:
1、要将glibc-linuxthreads解压到glibc目录下。
2、不能在glibc当前目录下运行configure。
3、加上优化开关,export CFLAGS="-g -O2 -march=i486",否则会出现错误
'#error "glibc cannot be compiled without optimization"'



你可能感兴趣的:(glibc)