自己编译了一下 Objective-C 的 runtime,求教如何调试

wangyi724 发布于 2014年08月31日 | 更新于 2014年09月01日
无人欣赏。

最近对 Objective-C 的 runtime 比较感兴趣,所以打算自己读一读源码。光读还不过瘾,想调试一下,所以就花了一点时间编译了一下,编译好了,发现有个小问题:

没法在链接的时候用上自己编译好的 libobjc.A.dylib,具体的信息可以看 stackoverflow 上我提的问题

编号的库文件和头文件在这里,大家帮我看一下吧。

PS: 刚刚尝试了一下把 /usr/lib/libobjc.A.dylib 替换掉,结果刚一移动这个文件,整个系统就不能运行了,刚从恢复模式的命令行弄回来

共4条回复
tinyfool 回复于 2014年09月01日

我觉得你没必要这么学习 @sycx 少爷你怎么看

sycx 回复于 2014年09月01日

你可以设置环境变量DYLD_INSERT_LIBRARIES

set env DYLD_INSERT_LIBRARIES /path/to/my/libobjc.A.dylib
./a.out
wangyi724 回复于 2014年09月01日

@tinyfool 多谢帮助我召唤大神

@sycx 环境变量确实好用,虽然又出新问题了,但是多谢啦

DYLD_FORCE_FLAT_NAMESPACE=1 DYLD_INSERT_LIBRARIES=./libobjc.A.dylib ./a.out
wangyi724 回复于 2014年09月01日

@tinyfool @sycx 再次感谢两位的关注,问题都解决了,感兴趣可以前往一探究竟。

https://github.com/Jeswang/objc4-532.2

登录 或者 注册
相关帖子