libc.so.6: version 'GLIBC_2.14' not found报错提示的解决方案

线上一台服务器在执行leveldb程序的时候,报错:"libc.so.6: version `GLIBC_2.14‘ not found"。 排查原因及解决方法如下:

1)产生原因
是由于Linux系统的glibc版本太低,而软件编译时使用了较高版本的glibc引起的!

查看系统glibc支持的版本
[[email protected] ~]# strings /lib64/libc.so.6 |grep GLIBC_
GLIBC_2.2.5
GLIBC_2.2.6
GLIBC_2.3
GLIBC_2.3.2
GLIBC_2.3.3
GLIBC_2.3.4
GLIBC_2.4
GLIBC_2.5
GLIBC_2.6
GLIBC_2.7
GLIBC_2.8
GLIBC_2.9
GLIBC_2.10
GLIBC_2.11
GLIBC_2.12
GLIBC_PRIVATE

[[email protected] ~]# rpm -qa |grep glibc
glibc-common-2.12-1.209.el6_9.2.x86_64
glibc-2.12-1.209.el6_9.2.x86_64
glibc-headers-2.12-1.209.el6_9.2.x86_64
glibc-devel-2.12-1.209.el6_9.2.x86_64

可以看到最高只支持2.12版本。现在需要将glibc支持的版本升级到GLIBC_2.14

2)升级glibc支持的版本到GLIBC_2.14

到http://www.gnu.org/software/libc/下载最新版本,这里下载了glibc-2.14.tar.xz 这个版本,解压到/usr/local/src目录下
百度云盘下载地址:https://pan.baidu.com/s/1YGia4YD45s42xMq9VapJow
提取密码:nejp

[[email protected] ~]# cd /usr/local/src/
[[email protected] src]# ll
total 9888
-rw-r--r-- 1 root root 10122492 Apr  8 03:21 glibc-2.14.tar.xz
[[email protected] src]# tar -vxf glibc-2.14.tar.xz

创建/var/VMdisks,将解压后的glibc-2.14移到/var/VMdisks目录下
[[email protected] src]# mkidr -p /var/VMdisks
[[email protected] src]# mv glibc-2.14 /var/VMdisks/

在glibc源码目录建立构建目录,并cd进入构建目录
[[email protected] src]# cd /var/VMdisks/glibc-2.14/
[[email protected] glibc-2.14]# mkdir build/
[[email protected] build]# ../configure --prefix=/usr/local/glibc-2.14
[[email protected] build]# make -j4
[[email protected] build]# make install

临时修改环境变量
[[email protected] build]# export LD_LIBRARY_PATH=/opt/glibc-2.14/lib:$LD_LIBRARY_PATH
[[email protected] build]# echo $LD_LIBRARY_PATH
/opt/glibc-2.14/lib:

如果是在普通用户下,就修改普通用户下的环境变量。比如这里我是在app账号下启动的leveldb程序,那么:
[[email protected] ~]$ export LD_LIBRARY_PATH=/opt/glibc-2.14/lib:$LD_LIBRARY_PATH
[[email protected] ~]$ echo $LD_LIBRARY_PATH
/opt/glibc-2.14/lib:

修改/lib64/libc.so.6的软链接来源,由之前的libc-2.12.so修改为libc-2.14.so
[[email protected] ~]# cd /lib64
[[email protected] ~]# ll libc.so.6
lrwxrwxrwx 1 root root 12 Apr  8 03:50 libc.so.6 -> libc-2.12.so

[[email protected] ~]# ll /usr/local/glibc-2.14/lib/libc-2.14.so
-rwxr-xr-x 1 root root 9645192 Apr  8 03:28 /usr/local/glibc-2.14/lib/libc-2.14.so
[[email protected] ~]# cp /usr/local/glibc-2.14/lib/libc-2.14.so /lib64/

删除libc-2.12.so之前的软链接
[[email protected] ~]# unlink /lib64/libc.so.6
或者直接指向命令:
[[email protected] ~]# rm -f /lib64/libc.so.6
==============================================================================================
如果上面删除命令执行后,导致该机器的很多shell命令无法执行!甚至于机器无法登陆!报错如下:
error while loading shared libraries: libc.so.6: cannot open shared object file: No such file or directory  

注意:千万不要关闭当前的终端窗口,因为此时机器可能无法登陆了。只能在当前终端窗口下进行紧急修复:
[[email protected] ~]# ldconfig
==============================================================================================

然后做/lib64/libc.so.6新的软链接,软链接到libc-2.14.so
[[email protected] lib64]# ln -s libc-2.14.so /lib64/libc.so.6
[[email protected] lib64]# ll libc.so.6
lrwxrwxrwx 1 root root 12 Apr  8 03:50 libc.so.6 -> libc-2.14.so

最后再查看系统glibc支持的版本:
[[email protected] lib64]# strings /lib64/libc.so.6 |grep GLIBC_
GLIBC_2.2.5
GLIBC_2.2.6
GLIBC_2.3
GLIBC_2.3.2
GLIBC_2.3.3
GLIBC_2.3.4
GLIBC_2.4
GLIBC_2.5
GLIBC_2.6
GLIBC_2.7
GLIBC_2.8
GLIBC_2.9
GLIBC_2.10
GLIBC_2.11
GLIBC_2.12
GLIBC_2.13
GLIBC_2.14
GLIBC_PRIVATE

发现glibc最高可以支持到2.14版本了。

然后再执行leveldb程序,就会发现不会有那个报错了!问题得到解决!

libc.so.6: version 'GLIBC_2.14' not found报错提示的解决方案

原文地址:https://www.cnblogs.com/kevingrace/p/8744417.html

时间: 2024-10-19 08:47:21

libc.so.6: version 'GLIBC_2.14' not found报错提示的解决方案的相关文章

解决"libc.so.6: version `GLIBC_2.14' not found",系统的glibc版本太低

一.查看系统glibc支持的版本: strings /lib64/libc.so.6 |grep GLIBC_ 或 rpm -qa |grep glibc 二.下载 到http://www.gnu.org/software/libc/下载最新版本,我这里下载了glibc-2.14.tar.xz 这个版本 http://ftp.gnu.org/gnu/glibc/ 三.解压 这里解压到/var/VMdisks/glibc-2.14/ cd /var/VMdisks/glibc-2.14/ 在gli

解决"libc.so.6: version `GLIBC_2.14' not found"问题

试图运行程序,提示"libc.so.6: version `GLIBC_2.14' not found",原因是系统的glibc版本太低,软件编译时使用了较高版本的glibc引起的:问题Centos 自动更新glibc-2.14 2.查看系统glibc支持的版本: strings /lib64/libc.so.6 |grep GLIBC_ rpm -qa |grep glibc ------------------------------- 可以看到最高只支持2.12版本,所以考虑编译

CentOS 安装redis3.2.6 提醒"libc.so.6: version `GLIBC_2.14' not found"系统的glibc版本太低

CentOS 安装redis3.2.6 提醒"libc.so.6: version `GLIBC_2.14' not found"系统的glibc版本太低 [[email protected] bin]# ./redis-server ../etc/redis.conf   ###redis启动时报错 ./redis-server: /lib64/libc.so.6: version `GLIBC_2.14' not found (required by ./redis-server)

CentOS 安装redis2.8.13 提醒"libc.so.6: version `GLIBC_2.14' not found"系统的glibc版本太低

以下在系统CentOS 6.3 x86_64上操作 1.试图运行程序,提示"libc.so.6: version `GLIBC_2.14' not found",原因是系统的glibc版本太低,软件编译时使用了较高版本的glibc引起的: [[email protected] src]$ ./redis-server ./redis-server: /lib64/libc.so.6: version `GLIBC_2.14' not found (required by ./redis

解决 /lib64/libc.so.6: version `GLIBC_2.14' not found 的问题

本文 引自与 以下博文: http://stuart.blog.51cto.com/728677/1840205 遇到这样的问题,乍一看是缺少软件,然后查看发现已安装 只是版本不对,so  那就是版本问题了 就需要安装一下提示中所需要的的版本 鉴于glibc的官网 我这里十分延迟,打不开,之后借用 博文中的FTP链接下载软件包 下载安装: [[email protected] ~]# wget http://ftp.gnu.org/gnu/glibc/glibc-2.14.tar.gz [[em

Centos6.5 升级glibc解决“libc.so.6: version GLIBC_2.14

研发发来邮件说线上有台服务器跑程序报错,信息如下: /agent: /lib64/libc.so.6: version `GLIBC_2.14' not found (required by./agent)从上面报错可以看出,程序运行时候,没有找到"GLIBC_2.14"这个版本库,而默认的Centos6.5 glibc版本最高为2.12, 所以需要更新系统glibc库 glibc是gnu发布的libc库,即c运行库,glibc是linux系统中最底层的api,几乎其它任何运行库都会依

/lib64/libc.so.6: version `GLIBC_2.14‘ not found

启动Mongod数据库报如下错误/ib64/libc.so.6: version `GLIBC_2.14' not found 原因:系统默认库版本是libc-2.12.so 解决办法,安装libc-2.14,然后把安装的libc2.14目录下的libc.so.6的软链接过去 软链接操作步骤rm -rf /lib64/libc.so.6export LD_LIBRARY_PATH=/usr/local/glibc-2.14/lib:$LD_LIBRARY_PATHln -s /usr/local

glibc 编译安装( version `GLIBC_2.14' not found")

用了kali一段时间了,没想到有一天使用vi命令时候突然就出现“GLIBC_2.14 not found"错误.没法子,果断查资料. 我是在kali-3.18.0中编译的. glibc的下载地址:http://ftp.gnu.org/gnu/glibc/ 或者:http://www.gnu.org/software/libc/download.html 安装: 下载的glibc的源码解压到某个目录,并进入源码目录 建立构建目录,并cd进入构建目录: [[email protected] glib

【问题】CentOS6.5系统"libc.so.6: version 'GLIBC_2.15' not found"解决方法

出现"libc.so.6: version 'GLIBC_2.15' not found"问题,是由于glibc版本过低,升级glibc即可. 由于CentOS系统RPM源目前glibc最高版本是2.12,所以只能采用源码升级 一.查看系统glibc支持的版本 strings /lib64/libc.so.6 |grep GLIBC#查看当前glibc版本ll /lib64/libc.so.6 lrwxrwxrwx. 1 root root 12 Oct  9  2014 /lib64