我最近遇到过两次这种情况,我试图列出 iOS mach-o 二进制文件的外部符号,但没有任何工具可以提供任何输出。以下是 jtool 的输出示例:
jtool -S BinaryName -arch arm64
U
U
U
U
U
U
U
U
这个特定的二进制文件是一个胖二进制文件,因此必须将它传递给 arch,但我也尝试将其精简并仅在 arm64 上运行命令。不过,我遇到的上一个二进制文件并不是一个胖二进制文件。不幸的是,我实际上无法共享任何一个二进制文件,我很欣赏这使得回答变得更加困难,因为它们来自客户。
我认为我对 mach-o 格式有一个合理的理解,尽管非常缺乏倒车经验。
我不知道这是否是一个我不知道的技巧,如果这些符号无法被任何这些工具解析,如何在运行时解析它们?有没有办法在不运行二进制文件的情况下“撤消”它并正常列出符号?