Dependency Walker

 

Dependency Walker是一个工具,它可以扫描任何架构(i386、x86_64、ppc、ppc64、arm和arm64)的任何32位或64位Mach-O可执行文件(可执行文件、so、dylib或kext),并建立一个所有依赖模块的分层树状图。对于找到的每个模块,它列出了该模块导出的所有函数,以及这些函数中哪些实际上被其他模块调用。

Dependency Walker对于排查与加载和执行模块有关的系统错误也非常有用。Dependency Walker可以检测到许多常见的应用程序问题,如模块丢失、无效模块、导入/导出不匹配、循环依赖错误、模块的机器类型不匹配以及模块初始化失败。

Dependency Walker处理所有类型的模块依赖,包括绑定的、懒惰的、弱的、转发的和重定向的符号,并在可能的情况下自动将它们拆分为标准签名。

注意:

– 由于符号加载机制的复杂性,如果一个符号被标记为红色,它仍然可以被符号重定向系统解决。这种情况发生在一些系统框架中,如CoreFoundation、Quartz等。

– 对于非本地的可执行文件,例如iOS可执行文件,会有很多符号丢失。这是预期的结果:这些符号只存在于目标架构的系统中。

版本1.4.1说明:

* 修正:错误报告libobjc、libSystem和其他系统库中的缺失符号。

  1. 打开应用时系统提示“已损坏,你应该移到废纸篓”
    这个是 macOS 的自我保护机制,不是在 Appstore 下载的应用,有时会有这类提示,解决方法请参考:两招解决macOS安装软件提示“已损坏”的问题
  2. 打开拥有多个分卷(dmgpart)的安装包
    在早期,我们的部份大型软件或游戏,都是分卷打包的,以方便下载。但是在最新的macOS系统下,无法直接打开此类安装包,解决方法请参考:如何打开多分卷安装包(dmgpart)
  3. 部份软件需要关闭SIP才可使用
    请留意页面上的提示,有部份应用需要关闭系统的SIP功能,才可正常使用,关闭方法请参考:macOS 系统关闭 SIP 教程
  4. 打开应用时提示“无法验证是否恶意软件”
    这个是 macOS 的自我保护机制,不是在 Appstore 下载的应用,有时会有这类提示,解决方法请参考:提示“无法验证是否恶意软件”的解决方法
  5. 是否支持版本更新
    请勿在应用内直接更新版本,您在登录本站帐号后购买的所有应用,都可享受免费更新,即今后本站发布此应用的新版本您可以免费下载。由于本站现在支持免登录购买,如果你在购买时没有登录,则今后无法下载本站发布的此应用的新版本。