转自:http://blog.sina.com.cn/s/blog_6c5a47d30102wfw9.html

undefined reference to `memcpy@GLIBC_2.14'

(2016-04-26 17:01:21)

标签:

杂谈

分类: 编程_Errors

原因

程序要调用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时报错了】

参考:http://my.oschina.net/zhangxu0512/blog/262275

[转载]undefined reference to `memcpy@GLIBC_2.14'的更多相关文章

  1. 记一次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 ...

  2. libstdc++.so.5: undefined reference to `memcpy@GLIBC_2.14'

    没有别的原因: 找正确的 libstdc++.so.5 包就成. 我这儿有,需要的可以下载奥!

  3. 解决undefined reference to `__poll_chk@GLIBC_2.16' 错误

    出现这个错误,是系统的glibc版本太低了,需要更新 到http://ftp.gnu.org/gnu/glibc/下载新版本的glibc,也不用太高,我选择glibc-2.20.tar.gz   解压 ...

  4. libQt5Core.so: undefined reference to `dlclose@GLIBC_2.4'

    /******************************************************************************** * libQt5Core.so: u ...

  5. libaio.so.1: undefined reference to `__stack_chk_fail@GLIBC_2.4'

    没有别的原因: 找正确的  libaio.so.1 包就成. 我这儿有,需要的可以下载奥!

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

    今天centos新机器上运行项目的时候出现题目所示的错误,搜索后发现是底层glibc 版本太低导致. strings /lib64/libc.so.6 |grep GLIBC_ 使用上面的命令发现 g ...

  7. version `GLIBC_2.14' not found 解决方法.

    from http://blog.csdn.net/force_eagle/article/details/8684669 version `GLIBC_2.14' not found 解决方法. 一 ...

  8. linux 编译引用动态库时,报GLIBC_2,14 not found的处理方法

    这种错误一般是其引用的libc.so,其中含有版本较高的函数导致. 查看及解决办法: objdump -p ./libdmapi.so 显示: version References: ... requ ...

  9. linux下开发,解决cocos2d-x中编译出现的一个小问题, undefined reference to symbol &#39;pthread_create@@GLIBC_2.2.5&#39;

    解决cocos2d-x中编译出现的一个小问题 对于cocos2d-x 2.×中编译中,若头文件里引入了#include "cocos-ext.h",在进行C++编译的时候会遇到例如 ...

随机推荐

  1. 什么是Unicode

    写这篇博客的原因, 从做软件开始,什么ASCII码, Unicode,UTF-8,UTF-16,UTF-32......这些鬼东西总是经常碰到,只知道这些鬼是编码格式,其他的就啥都不清楚了,既然总是遇 ...

  2. Java注解的原理

    自Java5.0版本引入注解之后,它就成为了Java平台中非常重要的一部分.开发过程中,我们也时常在应用代码中会看到诸如@Override,@Deprecated这样的注解.这篇文章中,我将向大家讲述 ...

  3. git 提交命令

    git stash -u 占存本地版本 git commit git fetch 提交 git rebase git stash pop 将本地没有提交的代码暂存,然后切换到其他分支,然后再回到当前分 ...

  4. Qt浅谈之一:内存泄露(总结)

    一.简介       Qt内存管理机制:Qt 在内部能够维护对象的层次结构.对于可视元素,这种层次结构就是子组件与父组件的关系:对于非可视元素,则是一个对象与另一个对象的从属关系.在 Qt 中,在 Q ...

  5. Promise的简单用法

    众所周知的,Javascript是一种单线程的语言,所有的代码必须按照所谓的“自上而下”的顺序来执行.本特性带来的问题就是,一些将来的.未知的操作,必须异步实现.本文将讨论一个比较常见的异步解决方案— ...

  6. HDU 1207 汉诺塔II (递推)

    经典的汉诺塔问题经常作为一个递归的经典例题存在.可能有人并不知道汉诺塔问题的典故.汉诺塔来源于印度传说的一个故事,上帝创造世界时作了三根金刚石柱子,在一根柱子上从下往上按大小顺序摞着64片黄金圆盘.上 ...

  7. git 新建本地分支后将本地分支推送到远程库, 使用git pull 或者 git push 的时候报错

    是因为本地分支和远程分支没有建立联系  (使用git branch -vv  可以查看本地分支和远程分支的关联关系)  .根据命令行提示只需要执行以下命令即可git branch --set-upst ...

  8. linux学习---ps、kill

    一.ps       查看进程 ps 为我们提供了进程的一次性的查看,它所提供的查看结果并不动态连续的:如果想对进程时间监控,应该用 top 工具 linux上进程有5种状态: 1. 运行(正在运行或 ...

  9. 人人网(cookie登录)

    有时候,我们在爬取一些网页之前必需要登录该网站,比如说我想爬取我的人人网主页内容. 1.打开:www.renren.com 2.输入用户名和密码,登录网站18679030315 3.个人首页,如下图: ...

  10. bzoj1663: [Usaco2006 Open]赶集

    Description Every year, Farmer John loves to attend the county fair. The fair has N booths (1 <= ...