[转载]undefined reference to `memcpy@GLIBC_2.14'
转自:http://blog.sina.com.cn/s/blog_6c5a47d30102wfw9.html
undefined reference to `memcpy@GLIBC_2.14'
(2016-04-26 17:01:21)
原因
程序要调用XXX.so,而XXX.so的编译环境比当前系统版本要高。
查看现有系统的GLIBC库版本: strings /lib64/libc.so.6 |grep GLIBC
证实了确实没有GLIBC_2.14
解决办法:安装glibc
从http://www.gnu.org/software/libc/ 下载源代码。我下载的版本是2.14,链接地址是http://ftp.gnu.org/gnu/glibc/glibc-2.14.tar.gz 【尽量和调用库版本一致】
[root@localhost ~]# tar xvf glibc-2.14.tar.gz ///< 解压
[root@localhost ~]# cd glibc-2.14 ///< 到解压目录下
[root@localhost glibc-2.14]# mkdir build ///< 新建build目录
[root@localhost glibc-2.14]# cd ./build ///< 到build目录下
[root@localhost build]# ../configure --prefix=/opt/glibc-2.14 ///< 配置安装路径,将安装在/opt/glibc-2.14目录下。不要安装在默认路径,以免破坏原有的GLIBC库造成其他程序异常
[root@localhost build]# make –j4 ///< make
[root@localhost build]# make install ///< make install
遇到的问题:
最后一步make install报错: Can't open configuration file /opt/glibc-2.14/etc/ld.so.conf: No such file or directory
解决办法:在make install 前输入,touch /opt/glibc-2.14/etc/ld.so.conf,再make install
可能的问题:
1. 虚拟机的话要拷贝到系统里,不能共享
2. 注意账户权限,需在opt/glibc-2.14目录下新建文件夹
执行完之后查看:strings /opt/glibc-2.14/lib/libc.so.6 |grep GLIBC
使用
下面3种方法的任何一种均可
1. export LD_LIBRARY_PATH=/opt/glibc-2.14/lib:$LD_LIBRARY_PATH
2. /opt/glibc-2.14/lib/libc.so.6 拷贝并重命名为/lib64/libc.so.6
3. 在makefile 编译的最后加上: /opt/glibc-2.14/lib/libc.so.6
就能用啦啦啦~~~~~~
【有时可能存在不兼容,我用2.19替换2.12时报错了】
[转载]undefined reference to `memcpy@GLIBC_2.14'的更多相关文章
- 记一次oracle安装错误:INFO: //usr/lib64/libstdc++.so.5: undefined reference to `memcpy@GLIBC_2.14'
--一次oracle安装错误,oracle version:11.2.0.1.0[root@localhost ~]# cat /etc/issue\SKernel \r on an \m [root ...
- libstdc++.so.5: undefined reference to `memcpy@GLIBC_2.14'
没有别的原因: 找正确的 libstdc++.so.5 包就成. 我这儿有,需要的可以下载奥!
- 解决undefined reference to `__poll_chk@GLIBC_2.16' 错误
出现这个错误,是系统的glibc版本太低了,需要更新 到http://ftp.gnu.org/gnu/glibc/下载新版本的glibc,也不用太高,我选择glibc-2.20.tar.gz 解压 ...
- libQt5Core.so: undefined reference to `dlclose@GLIBC_2.4'
/******************************************************************************** * libQt5Core.so: u ...
- libaio.so.1: undefined reference to `__stack_chk_fail@GLIBC_2.4'
没有别的原因: 找正确的 libaio.so.1 包就成. 我这儿有,需要的可以下载奥!
- 解决libc.so.6: version `GLIBC_2.14' not found问题
今天centos新机器上运行项目的时候出现题目所示的错误,搜索后发现是底层glibc 版本太低导致. strings /lib64/libc.so.6 |grep GLIBC_ 使用上面的命令发现 g ...
- version `GLIBC_2.14' not found 解决方法.
from http://blog.csdn.net/force_eagle/article/details/8684669 version `GLIBC_2.14' not found 解决方法. 一 ...
- linux 编译引用动态库时,报GLIBC_2,14 not found的处理方法
这种错误一般是其引用的libc.so,其中含有版本较高的函数导致. 查看及解决办法: objdump -p ./libdmapi.so 显示: version References: ... requ ...
- linux下开发,解决cocos2d-x中编译出现的一个小问题, undefined reference to symbol 'pthread_create@@GLIBC_2.2.5'
解决cocos2d-x中编译出现的一个小问题 对于cocos2d-x 2.×中编译中,若头文件里引入了#include "cocos-ext.h",在进行C++编译的时候会遇到例如 ...
随机推荐
- 【Hadoop学习之二】Hadoop伪分布式安装
环境 虚拟机:VMware 10 Linux版本:CentOS-6.5-x86_64 客户端:Xshell4 FTP:Xftp4 jdk8 hadoop-3.1.1 伪分布式就 ...
- 设计模式之Adapter(适配器)(转)
定义: 将两个不兼容的类纠合在一起使用,属于结构型模式,需要有Adaptee(被适配者)和Adaptor(适配器)两个身份. 为何使用? 我们经常碰到要将两个没有关系的类组合在一起使用,第一解决方案是 ...
- 前端规范--eslint standard
https://github.com/standard/standard/blob/master/docs/RULES-zhcn.md
- django 常用方法总结 < 手写分页-上传头像-redis缓存,排行 ...>
1.不使用自带模块<Paginator>的手写分页功能views.pydef post_list(request): page = request.GET.get('page', 1) # ...
- ref 参数与out参数
变量作为参数传给方法,同时希望在方法执行完成后对参数,反应到变量上面.就需要用到ref和out这两个参数. ref参数:在 传入前必须先初始化 out参数:不需要做预先的处理
- 开始Nginx的SSL模块
nginx: [emerg] the "ssl" parameter requires ngx_http_ssl_module in /usr/local/nginx/conf/n ...
- GUI常用对话框5
%输入对话框 name = inputdlg('请输入姓名','实例'); ret = inputdlg({'请输入姓名','请输入性别'},'实例') %一个输入表中多行输入 %留言对话框 info ...
- 怎样从外网访问内网Oracle数据库?
本地安装了一个Oracle数据库,只能在局域网内访问到,怎样从外网也能访问到本地的Oracle数据库呢?本文将介绍具体的实现步骤. 1. 准备工作 1.1 安装并启动Oracle数据库 默认安装的Or ...
- hiho一下 第144周
题目1 : 机会渺茫 时间限制:5000ms 单点时限:1000ms 内存限制:256MB 描述 小Hi最近在追求一名学数学的女生小Z.小Z其实是想拒绝他的,但是找不到好的说辞,于是提出了这样的要求: ...
- Docker学习笔记之搭建Docker运行环境
0x00 概述 既然 Docker 是一款实用软件,我们就不得不先从它的安装说起,只有让 Docker 运行在我们的计算机上,才能更方便我们对 Docker 相关知识和使用方式的学习.得益于与商业性的 ...