遇到的问题
在执行.bin文件的时候 提示
libc.so.6: version GLIBC_2.14 not found
错误这是由于centos系统为了稳定性,所用的c运行库版本较低,通过
strings /lib64/libc.so.6 | grep GLIBC_
可以查看系统所安装的glibc版本 一般centos系统只安装到2.12
安装glibc-2.14
到下载地址下载glibc-2.14版本
将下载的压缩包放置到某个目录中,例如/home/目录 开始执行下列shell命令
[root@xxx home]# tar -xzvf glibc-2.14.tar.gz //解压压缩包
[root@xxx home]# cd glibc-2.14 //进入解压后的文件目录
[root@xxx glibc-2.14]# mkdir build //创建build文件夹
[root@xxx glibc-2.14]# cd build //进入build文件夹
[root@xxx build]# ../configure --prefix=/opt/glibc-2.14 // 配置glibc并设置当前glibc-2.14安装目录位/opt/glibc-2.14(安装目录可以自己选择),记住这个安装目录,后面操作需要用到
[root@xxx build]# make -j4 //开启编译加速 4个进程
[root@xxx build]# make install //开始安装
接下来等待安装完成
glibc软链
安装完成后, 建立软链指向glibc-2.14, 执行如下命令:
$ rm -rf /lib64/libc.so.6 // 先删除先前的libc.so.6软链
$ ln -s /opt/glibc-2.14/lib/libc-2.14.so /lib64/libc.so.6 //建立新的软连接
注意
删除libc.so.6之后可能导致系统命令不可用的情况, 可使用如下方法创建2.14的链接
$ LD_PRELOAD=/opt/glibc-2.14/lib/libc-2.14.so ln -s /opt/glibc-2.14/lib/libc-2.14.so /lib64/libc.so.6
如果上述更新失败可使用如下命令还原到2.12版本
$ LD_PRELOAD=/lib64/libc-2.12.so ln -s /lib64/libc-2.12.so /lib64/libc.so.6
此时再通过命令查看glibc可以看到底部有新安装的GLIBC_2.14