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] glibc-2.14]$ mkdir build

[[email protected] glibc-2.14]$ cd build

配置:

运行configure :

[[email protected] build]$ ../configure --prefix=/opt/glibc-2.14

[[email protected] build]$ make -j4

[[email protected] build]$ sudo make install

临时修改环境变量:

[[email protected] bin]$ export LD_LIBRARY_PATH=/opt/glibc-2.14/lib:$LD_LIBRARY_PATH

最后如果执行程序最好是要执行以下 ldconfig 以便查找该共享库。

如果你没有安装gawk,你可能会看到以下的错误信息:
mawk: scripts/gen-sorted.awk: line 19: syntax error at or near ]
mawk: scripts/gen-sorted.awk: line 19: runaway regular expression /, "", subd ...
make[1]: *** No rule to make target `/home/wstone/Build/glibc/glibc-build/Versions.all‘, needed by `/home/wstone/Build/glibc/glibc-build/abi-versions.h‘.  Stop.
make[1]: Leaving directory `/home/wstone/Build/glibc/glibc-2.9‘
make: *** [all] Error 2
这是因为ubuntu使用的是mawk,安装上glibc需要的gawk即可:
$ sudo apt-get install gawk  ##kali上也是同理。

在ubuntu上编译glibc可能还会看到以下错误:
../misc/syslog.c: In function ‘__vsyslog_chk’:
../misc/syslog.c:123: sorry, unimplemented: inlining failed in call to ‘syslog’: function body not available
../misc/syslog.c:155: sorry, unimplemented: called from here
make[2]: *** [/home/wstone/Build/glibc/glibc-build/misc/syslog.o] Error 1
make[2]: Leaving directory `/home/wstone/Build/glibc/glibc-2.9/misc‘
make[1]: *** [misc/subdir_lib] Error 2
make[1]: Leaving directory `/home/wstone/Build/glibc/glibc-2.9‘
make: *** [all] Error 2
网上讨论这个是gcc的问题,使用以下的方式configure可以解决:
$ echo "CFLAGS +=-O2 -U_FORTIFY_SOURCE  -march=i486 -mtune=native -fno-stack-protector" >configparm
$ ../glibc-2.9/configure  --prefix=/usr  --disable-profile --enable-kernel=2.6.15

关于这个问题的内容,可以参考:
1、http://swiss.ubuntuforums.org/showthread.php?p=7624127
2、https://wiki.ubuntu.com/CompilerFlags

另外glibc的编译,可以参考lfs的内容:
1、http://www.linuxfromscratch.org/lfs/view/stable/chapter05/glibc.html

如果想了解一些具体的编译选项,那么应该仔细阅读glibc源码中的一些说明性文档。

参考地址:http://www.cnblogs.com/wainiwann/p/4206582.html

http://blog.chinaunix.net/uid-223060-id-2215317.html

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

时间: 2024-08-28 06:02:03

glibc 编译安装( version `GLIBC_2.14' not found")的相关文章

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

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,几乎其它任何运行库都会依

解决"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版本,所以考虑编译

解决 /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

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

/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

Centos 7 源码编译安装内核4.14.12

为什么要编译内核 需要新功能的支持: 在生产环境中,突然会需要使用一些新的功能,但是原有的内核并不支持此功能,这是就需要重新编译出一个新的内核来提供对此新功能的支持,比如虚拟化.iptables功能必须要在2.4.X以上版本的内核中才支持. 原核心太过于臃肿: 原来安装的内核中,有很多不常用甚至基本上用不到的功能支持,而这些功能又会使内核文件变得很大,这时要将此变成一个简化切功能够用的内核就需要进行重新编译. 与硬件搭配的稳定性: 很多情况下,系统内核中默认一般默认支持的CPU类型为Inter,