Chinaunix首页 | 论坛 | 博客
  • 博客访问: 595515
  • 博文数量: 136
  • 博客积分: 893
  • 博客等级: 中士
  • 技术积分: 1001
  • 用 户 组: 普通用户
  • 注册时间: 2012-03-31 09:18
个人简介

生命可以终止,梦想不会!

文章分类

全部博文(136)

文章存档

2016年(4)

2015年(2)

2014年(5)

2013年(7)

2012年(118)

分类:

2012-04-25 18:10:26

原文地址:用自己的库替换系统库 作者:zhanleewo

需要实现的功能是用自己写的库代替系统库提供的一些函数

1. Linux 和 大部分Unix
  1. export LD_PRELOAD=./mylib.so
Linux下可能遇见的错误:
  1. error while loading shared libraries: /root/workspace/myopen/Debug/mylib.so: cannot restore segment prot after reloc: Permission denied
解决办法:
  1. chcon -t texrel_shlib_t /root/workspace/myopen/Debug/mylib.so

2. Mac OS X
  1. export DYLD_INSERT_LIBRARIES=./mylib.so
  2. export DYLD_FORCE_FLAT_NAMESPACE=1
Mac OS X可能遇见的错误:
  1. dyld: could not load inserted library: /opt/local/lib/mylib.dylib Trace/BPT trap
解决办法:
用lipo查看原因
  1. lipo -info /opt/local/lib/mylib.dylib
我的这个问题产生的原因是库是32位的,编译成64位就好了
阅读(833) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~