objc源码阅读技巧与实践

  1. 汇编代码 + 源码 + 符号断点

    1. 源码下载网站
      • https://opensource.apple.com/tarballs/
      • https://opensource.apple.com/
    2. 查看断点处汇编,下图处打勾,然后断点的时候,自然会显示汇编了


      image.png

      3.符号断点添加


      image.png
输入符号名字即可
  1. 代码编译调试

    在官方下载的源码,运行时会有很多报错的地方。
    参考KC老师文章:https://juejin.cn/post/6844903959161733133
    简单总结可以顺利完成调试的过程
    环境Xcode12.2,mac 10.15.5

    github 下载objc4-818.2,编译直接成功

    调试步骤
    1. 生成一个target


      image.png
    2. build phases 中如图添加lib


      image.png
    3. 注意看下setting->Enable Hardened Runtime 是否已关闭,需要关闭

    4. 注意compile source 中 main文件文件是否在第一位

    示例

    在生成的target上写如图的代码


    image.png

    打上断点


    image.png

    运行断点成功,可以快乐的调试源码了
    image.png
疑难兼容

M1电脑处理,把图片的位置注释,可以运行成功


image.png
探索实践

探索alloc源码生成流程图


image.png

你可能感兴趣的:(objc源码阅读技巧与实践)