Mach-o 文件如何删除不需要的方法和类

比如有一个dylib 或者静态库,只需要调用里面部分方法,但文件比较大,能否实现这样的需求呢?

木有看懂,“但是”怎么感觉转折的幅度有点大

看情况。很难。

简单的描述一下方法:
收集你需要留下来的函数。递归寻找这些函数的所有依赖sub/函数/随你叫什么

遍历所有这些函数的所有BB,寻找外部调用/引用。
将这些函数及其引用移到所在SEG/SEC的开头。

修改所有引用的地址

修改符号表/OC段的IMP地址

移除其余部分并修正MachO头部

完工

据我所知没有任何现成的工具可以做到。只能手动。
非常复杂且容错率为0

建议放弃

静态库的话非OC方法LTO是会自动优化的,其他没办法

动态库精简

thanks ,看来要放弃了

忽略但是那句,说得乱,见外了

看来我明白了,就是文件太大,你却只想要某个方法,单独弄出来。。。
我太菜,不会。哈

还是依赖于序列化反序列化库
LIEF也实现不了这个