我刚刚开始使用一些调试实用程序,包括 nm。我想分析我电脑上的一些程序。我下载的一些像 Sublime Text 一样使用都很好:
nm Sublime\ Text\ 2
nm -arch x86_64 Sublime\ Text\ 2
但是,我尝试分析的其他应用程序会抛出如下错误:
nm: object: ForkLift malformed object (unknown load command 34)
我确信它这样做有一个明显的原因,但我完全是空白。
可能导致 nm 窒息的一件事是 Mac App Store 和 App Store 购买上的 DRM。如果您的 ForkLift 副本碰巧来自使用 DRM 的来源,这可能会导致 nm 等诊断工具无法运行或返回不完整、不一致或不正确的结果。似乎您正在了解这些工具的功能、它们的工作原理以及何时适合使用这些工具——太棒了!从没有被 DRM 保护层包裹的更小、更简单的应用程序开始,然后逐步发展到更复杂的软件。您可以从应用程序中学到的东西真是太棒了!
这些工具可用于受 DRM 保护的二进制文件,但我必须恭敬地拒绝就这个自然后续问题的特定方面进行更多讨论。