解决libc.so.6: version `GLIBC_2.14' not found问题, 升级glibc,glibc-2.15
0.以下在系统CentOS 6.3 x86_64上操作
1.试图运行程序,提示"libc.so.6: version `GLIBC_2.14' not found",原因是系统的glibc版本太低,软件编译时使用了较高版本的glibc引起的:
- [ghui@StuOS bin]$ pwd
- /var/VMdisks/cross/mingw32/bin
- [ghui@StuOS bin]$ ls
- lrelease QtCore4.dll QtNetwork4.dll QtSql4.dll QtXml4.dll
- moc QtDeclarative4.dll QtOpenGL4.dll QtSvg4.dll rcc
- phonon4.dll QtGui4.dll QtScript4.dll QtTest4.dll uic
- qmake QtMultimedia4.dll QtScriptTools4.dll QtWebKit4.dll
- [ghui@StuOS bin]$ ./qmake
- ./qmake: /lib64/libc.so.6: version `GLIBC_2.14' not found (required by ./qmake)
[ghui@StuOS bin]$ pwd /var/VMdisks/cross/mingw32/bin [ghui@StuOS bin]$ ls lrelease QtCore4.dll QtNetwork4.dll QtSql4.dll QtXml4.dll moc QtDeclarative4.dll QtOpenGL4.dll QtSvg4.dll rcc phonon4.dll QtGui4.dll QtScript4.dll QtTest4.dll uic qmake QtMultimedia4.dll QtScriptTools4.dll QtWebKit4.dll [ghui@StuOS bin]$ ./qmake ./qmake: /lib64/libc.so.6: version `GLIBC_2.14' not found (required by ./qmake)
2.查看系统glibc支持的版本:
- [ghui@StuOS bin]$ 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
[ghui@StuOS bin]$ 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
- [ghui@StuOS bin]$ rpm -qa |grep glibc
- glibc-static-2.12-1.80.el6_3.6.x86_64
- glibc-headers-2.12-1.80.el6_3.6.x86_64
- glibc-common-2.12-1.80.el6_3.6.x86_64
- glibc-devel-2.12-1.80.el6_3.6.x86_64
- glibc-static-2.12-1.80.el6_3.6.i686
- glibc-devel-2.12-1.80.el6_3.6.i686
- glibc-2.12-1.80.el6_3.6.i686
- glibc-2.12-1.80.el6_3.6.x86_64
[ghui@StuOS bin]$ rpm -qa |grep glibc glibc-static-2.12-1.80.el6_3.6.x86_64 glibc-headers-2.12-1.80.el6_3.6.x86_64 glibc-common-2.12-1.80.el6_3.6.x86_64 glibc-devel-2.12-1.80.el6_3.6.x86_64 glibc-static-2.12-1.80.el6_3.6.i686 glibc-devel-2.12-1.80.el6_3.6.i686 glibc-2.12-1.80.el6_3.6.i686 glibc-2.12-1.80.el6_3.6.x86_64
3.可以看到最高只支持2.12版本,所以考虑编译解决这个问题:
a. 到http://www.gnu.org/software/libc/下载最新版本,我这里下载了glibc-2.14.tar.xz 这个版本,解压到任意目录准备编译
b.这里解压到/var/VMdisks/glibc-2.14/
- [ghui@StuOS bin]$ cd /var/VMdisks/glibc-2.14/
- [ghui@StuOS glibc-2.14]$ pwd
- /var/VMdisks/glibc-2.14
- [ghui@StuOS glibc-2.14]$ ls
- abilist config.h.in intl README.libm
- abi-tags config.log io resolv
- aclocal.m4 config.make.in libc-abis resource
- aout configure libidn rt
- argp configure.in libio Rules
- assert conform LICENSES scripts
- autom4te.cache CONFORMANCE locale setjmp
- bits COPYING localedata shadow
- BUGS COPYING.LIB login shlib-versions
- build cppflags-iterator.mk mach signal
- CANCEL-FCT-WAIVE crypt Makeconfig socket
- CANCEL-FILE-WAIVE csu Makefile soft-fp
- catgets ctype Makefile.in stdio-common
- ChangeLog debug Makerules stdlib
- ChangeLog.1 dirent malloc streams
- ChangeLog.10 dlfcn manual string
- ChangeLog.11 elf math sunrpc
- ChangeLog.12 extra-lib.mk misc sysdeps
- ChangeLog.13 extra-modules.mk NAMESPACE sysvipc
- ChangeLog.14 FAQ NEWS termios
- ChangeLog.15 FAQ.in nis test-skeleton.c
- ChangeLog.16 gmon NOTES time
- ChangeLog.17 gnulib nptl timezone
- ChangeLog.2 grp nptl_db tls.make.c
- ChangeLog.3 gshadow nscd version.h
- ChangeLog.4 hesiod nss Versions.def
- ChangeLog.5 hurd o-iterator.mk wcsmbs
- ChangeLog.6 iconv po wctype
- ChangeLog.7 iconvdata posix WUR-REPORT
- ChangeLog.8 include PROJECTS
- ChangeLog.9 inet pwd
- conf INSTALL README
[ghui@StuOS bin]$ cd /var/VMdisks/glibc-2.14/ [ghui@StuOS glibc-2.14]$ pwd /var/VMdisks/glibc-2.14 [ghui@StuOS glibc-2.14]$ ls abilist config.h.in intl README.libm abi-tags config.log io resolv aclocal.m4 config.make.in libc-abis resource aout configure libidn rt argp configure.in libio Rules assert conform LICENSES scripts autom4te.cache CONFORMANCE locale setjmp bits COPYING localedata shadow BUGS COPYING.LIB login shlib-versions build cppflags-iterator.mk mach signal CANCEL-FCT-WAIVE crypt Makeconfig socket CANCEL-FILE-WAIVE csu Makefile soft-fp catgets ctype Makefile.in stdio-common ChangeLog debug Makerules stdlib ChangeLog.1 dirent malloc streams ChangeLog.10 dlfcn manual string ChangeLog.11 elf math sunrpc ChangeLog.12 extra-lib.mk misc sysdeps ChangeLog.13 extra-modules.mk NAMESPACE sysvipc ChangeLog.14 FAQ NEWS termios ChangeLog.15 FAQ.in nis test-skeleton.c ChangeLog.16 gmon NOTES time ChangeLog.17 gnulib nptl timezone ChangeLog.2 grp nptl_db tls.make.c ChangeLog.3 gshadow nscd version.h ChangeLog.4 hesiod nss Versions.def ChangeLog.5 hurd o-iterator.mk wcsmbs ChangeLog.6 iconv po wctype ChangeLog.7 iconvdata posix WUR-REPORT ChangeLog.8 include PROJECTS ChangeLog.9 inet pwd conf INSTALL README
c.在glibc源码目录建立构建目录,并cd进入构建目录
- [ghui@StuOS glibc-2.14]$ mkdir build
[ghui@StuOS glibc-2.14]$ mkdir build
- [ghui@StuOS glibc-2.14]$ cd build
[ghui@StuOS glibc-2.14]$ cd build
d.运行configure配置,make && sudo make install
- [ghui@StuOS build]$ ../configure --prefix=/opt/glibc-2.14
- [ghui@StuOS build]$ make -j4
- [ghui@StuOS build]$ sudo make install
- [sudo] password for ghui:
[ghui@StuOS build]$ ../configure --prefix=/opt/glibc-2.14 [ghui@StuOS build]$ make -j4 [ghui@StuOS build]$ sudo make install [sudo] password for ghui:
4.临时修改环境变量
- [ghui@StuOS bin]$ export LD_LIBRARY_PATH=/opt/glibc-2.14/lib:$LD_LIBRARY_PATH
[ghui@StuOS bin]$ export LD_LIBRARY_PATH=/opt/glibc-2.14/lib:$LD_LIBRARY_PATH
- [ghui@StuOS glibc-2.14]$ cd /var/VMdisks/cross/mingw32/bin/
[ghui@StuOS glibc-2.14]$ cd /var/VMdisks/cross/mingw32/bin/
LD_LIBRARY_PATH=/opt/glibc-2.14/lib:$LD_LIBRARY_PATH LD_LIBRARY_PATH=/opt/glibc-2.14/lib:$LD_LIBRARY_PATH export LD_LIBRARY_PATH
修改完后,记得关掉当前终端并重新打开一个新的终端,从而使上面的配置生效。
- [ghui@StuOS bin]$ ./qmake
- Usage: ./qmake [mode] [options] [files]
- QMake has two modes, one mode for generating project files based on
- some heuristics, and the other for generating makefiles. Normally you
- shouldn't need to specify a mode, as makefile generation is the default
- mode for qmake, but you may use this to test qmake on an existing project
From:
http://blog.csdn.net/cpplang/article/details/8462768
编译升级glibc, 易引起内核进不去,不能轻易升级:
http://www.linuxidc.com/Linux/2015-04/116472.htm
http://blog.csdn.net/officercat/article/details/39520227
http://blog.sina.com.cn/s/blog_53aab5c10101dfpm.html
http://zhaoyong.blog.51cto.com/61971/194327 几个相关库强制做软件链接
另外,centos7.0支持到glibc-2.17.
linux上装最新版本chrome, android studio都需要至少安装glibc-2.15
编译安装glibc几个方案:
1.下载glibc
wget http://ftp.gnu.org/gnu/glibc/glibc-2.3.2.tar.gz
2.下载glibc-linuxthreads
wget http://ftp.gnu.org/gnu/glibc/glibc-linuxthreads-2.3.2.tar.gz
3.解压
tar -zxvf glibc-2.3.2.tar.gzcd glibc-2.3.2tar -zxvf ../glibc-linuxthreads-2.3.2.tar.gzcd .../glibc-2.3.2/configure --prefix=/usr --disable-profile --enable-add-ons --libexecdir=/usr/lib --with-headers=/usr/includemakemake install
注意点:
1、要将glibc-linuxthreads解压到glibc目录下。
2、不能在glibc当前目录下运行configure
解决libc.so.6: version `GLIBC_2.14' not found问题, 升级glibc,glibc-2.15的更多相关文章
- 解决libc.so.6: version `GLIBC_2.14' not found问题
今天centos新机器上运行项目的时候出现题目所示的错误,搜索后发现是底层glibc 版本太低导致. strings /lib64/libc.so.6 |grep GLIBC_ 使用上面的命令发现 g ...
- 解决libc.so.6: version `GLIBC_2.14' not found问题
1.命令检查系统glibc支持的版本: strings /lib64/libc.so.6 |grep GLIBC_ 如果没有2.14或者其他版本的,需要下载安装 2.下载地址:http://pan.b ...
- 解决"libc.so.6: version `GLIBC_2.14' not found",系统的glibc版本太低 {强行安装!!}
原创,转载请注明出处,谢谢!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! 首先查看系统glibc支持的版本: strings /lib64/libc.so.6 |grep G ...
- CentOS "libc.so.6: version 'GLIBC_2.14' not found"解决方法,同理'GLIBC_2.15' not found"
出现"libc.so.6: version 'GLIBC_2.14' not found"问题,是由于glibc版本过低,升级glibc即可. 由于CentOS系统RPM源目前gl ...
- 关于centos6版本执行程序报错:libc.so.6: version GLIBC_2.14 not found的解决
执行后程序报错: libc.so.6: version GLIBC_2.14 not found 这种情况是因为当前服务器glibc的版本比较低造成的(不出意外是glibc_2.12是最高版本): 1 ...
- 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",原因是系统的gli ...
- libc.so.6: version 'GLIBC_2.14' not found报错提示的解决方案
线上一台服务器在执行leveldb程序的时候,报错:"libc.so.6: version `GLIBC_2.14' not found". 排查原因及解决方法如下: 1)产生原因 ...
- 执行SDK的aapt报错./aapt: /lib64/libc.so.6: version `GLIBC_2.14' not found (required by ./aapt)
问题| 执行SDK下的aapt报错./aapt: /lib64/libc.so.6: version `GLIBC_2.14' not found (required by ./aapt) ../ ...
- 【linux】提醒"libc.so.6: version `GLIBC_2.14' not found"系统的glibc版本太低
原文链接:http://www.myexception.cn/linux-unix/1622052.html [linux]提示"libc.so.6: version `GLIBC_2.14 ...
随机推荐
- JVM学习之堆和栈
Java栈与堆 1. 栈(stack)与堆(heap)都是Java用来在Ram中存放数据的地方.与C++不同,Java自动管理栈和堆,程序员不能直接地设置栈或堆. 2. 栈的优势是,存取速度比堆要快, ...
- 关于jQuery中toggle()函数的使用
今天遇到一个有趣的例子,将它记录下来. 一个一级菜单,里边有一个二级菜单,二级菜单是通过锚点来链接页面元素的.想要实现的效果是当点击锚点时,页面链接到相应锚点,同时二级菜单隐藏,再点击一级菜单时,继续 ...
- mysql函数操作
<?php try{ $dbh = new PDO('mysql:dbname=testdb;host=localhost', 'mysql_user', 'mysql_pwd'); }catc ...
- struts2笔记05-ServletActionContext
1.ServletActionContext ServletActionContext, 这个类继承自ActionContext, 所以它具有ActionContext的很多功能,不过更重要的是它提供 ...
- java面向对象之 多态 Polymorphism
多态(Polymorphism):用我们通俗易懂的话来说就是子类就是父类(猫是动物,学生也是人),因此多态的意思就是:父类型的引用可以指向子类的对象. 1.多态的含义:一种类型,呈现出多种状态 主要讨 ...
- 应用程序缓存 AppCache
Application Cache HTML5提供了一系列的特性来支持离线应用: application cache localStrorage web SQL & indexed datab ...
- python进阶--打包为exe文件
一.Python打包为EXE文件有不少方案,比较常用的有下面两种方式: 1.使用py2exe 详细介绍:http://www.cnblogs.com/jans2002/archive/2006/09/ ...
- 一个基于MINA框架应用的最简单例子
直接上代码.关于原理和主要的API以后在说.先能跑通了在说. 主要的包:mina-core-2.0.0.jar[到官网上下载完整项目包里面还有文档和依赖包],jcl-over-slf4j-1.5.11 ...
- nginx 通过rsyslog发日志 rsyslog服务器挂掉 日志丢失问题
nginx 配置: user nginx; worker_processes 1; syslog local5 nginx-zjzc01; rsyslog 服务器收到的消息: -rw-r--r-- 1 ...
- JAVA实现字符串反转,借助字符数组实现
public static String reverseStr(String str) { int len = str.length(); char ch[] = str.toCharArray(); ...