系统出现此错误主要是系统glibc版本低,而运行程序编译版本高致使的html
#查看系统支持的glibc支持的版本 strings /lib64/libc.so.6 |grep GLIBC_ #-----------------------------------start----------------------------------- 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 #------------------------------------end------------------------------------ #strings命令在对象文件或二进制文件中查找可打印的字符串。字符串是4个或更多可打印字符的任意序列,以换行符或空字符结束。 strings命令对识别随机对象文件颇有用。 #参考:http://man.linuxde.net/strings
注:Linux里标准的libc是GNU libc,简称为glibc;glibc是GNU发布的libc库,即c运行库。glibc是linux系统中最底层的api,几乎其它任何运行库都会依赖于glibc。glibc除了封装linux操做系统所提供的系统服务外,它自己也提供了许多其它一些必要功能服务的实现。因为 glibc 囊括了几乎全部的 UNIX 通行的标准,能够想见其内容一应俱全。而就像其余的 UNIX 系统同样,其内含的档案群分散于系统的树状目录结构中,像一个支架通常撑起整个操做系统。在 GNU/Linux 系统中,其C函式库发展史点出了GNU/Linux 演进的几个重要里程碑,用 glibc 做为系统的C函式库,是GNU/Linux演进的一个重要里程碑。(by百度百科)linux
#查看系统安装的glibc包 rpm -qa |grep glibc #-----------------------------------start----------------------------------- glibc-devel-2.12-1.166.el6_7.7.x86_64 glibc-2.12-1.166.el6_7.7.x86_64 glibc-headers-2.12-1.166.el6_7.7.x86_64 glibc-common-2.12-1.166.el6_7.7.x86_64 #------------------------------------end------------------------------------
解决方案:找到运行程序依赖的glibc包下载安装,修改环境变量便可api
#下载glibc包 wget http://ftp.gnu.org/gnu/libc/glibc-2.14.tar.gz #解压压缩包 tar -zxvf glibc-2.14.tar.gz #进入glibc源码目录,创建build目录,进入build目录,配置glibc ../configure --prefix=/opt/glibc-2.14 #安装 make -j4 make install #用make -j带一个参数,能够把项目在进行并行编译,好比在一台双核的机器上,彻底能够用make -j4,让make最多容许4个编译命令同时执行,这样能够更有效的利用CPU资源 #参考:https://www.freemindworld.com/blog/2010/100105_make_complie_process_faster.shtml #修改临时环境变量 export LD_LIBRARY_PATH=/opt/glibc-2.14/lib:$LD_LIBRARY_PATH #如今能够执行你须要执行的程序了
注:bash
glibc包下载列表地址:http://ftp.gnu.org/gnu/libc/ui
http://www.gnu.org/software/libc/操作系统