【问题标题】:symbolicatecrash is unable to find any symbolssymbolicatecrash 找不到任何符号
【发布时间】:2012-12-06 18:41:18
【问题描述】:

我正在运行 XCode 4.5.2,但在使 symbolicatecrash 正常工作时遇到问题。

请注意,这是针对不是在我的系统上生成且不在存档中的应用和 dsym。

到目前为止,我已经:

  1. 导出 DEVELOPER_DIR=/Applications/Xcode.app sudo xcode-select
  2. sudo xcode-select -switch /Applications/Xcode.app/Contents/Developer
  3. cd /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/Library/PrivateFrameworks/DTDeviceKit.framework/Versions/A/Resources
  4. ./symbolicatecrash -v -o test.txt ~/Downloads/OnDeckCrash/OnDeck_2012-11-26-152754_Andys-phone.crash ~/Downloads/OnDeckCrash/OnDeck.app.dSYM

这并没有创建“test.txt”。 它似乎根本找不到任何符号。 它为每个模块报告类似的内容:

...........fetching symbol file for CoreFoundation--[undef] 
Searching []...-- NO MATCH
Searching in Spotlight for dsym with UUID of e30fc309df7b3c9f8ac57f0f6047d65f
Running mdfind "com_apple_xcode_dsym_uuids == E30FC309-DF7B-3C9F-8AC5-7F0F6047D65F"
@dsym_paths = (  )
@exec_names = (  )
Did not find executable for dsym
## Warning: Can't find any unstripped binary that matches version of /System/Library/Frameworks/CoreFoundation.framework/CoreFoundation

请注意,应用程序包与 mSYM 包位于同一目录中。 我还尝试将 symbolicatecrash 添加到我的路径中,并从 .dSYM 和 .app 所在的目录执行。这没什么区别。

关于如何让它工作的任何建议?

【问题讨论】:

    标签: ios xcode symbolicatecrash


    【解决方案1】:

    我今天也遇到了同样的问题。在我的情况下,mdfind 无法搜索 Archives (/Users/xxx/Library/Developer/Xcode/Archives/) 文件夹。所以我所做的是转到系统偏好设置-> 聚光灯-> 隐私,添加然后删除档案文件夹。重启 Xcode 或重新符号化

    mdfind 在 symbolicatecrash 中用于查找相对于带有 uuid 的崩溃文件的 dsym 在你的情况下

    mdfind "com_apple_xcode_dsym_uuids == E30FC309-DF7B-3C9F-8AC5-7F0F6047D65F"
    

    你也可以运行

    mdfind "com_apple_xcode_dsym_uuids == *"
    

    列出 mdfind 知道的所有 dsym 位置。这会让你知道你的 dsym 是否在列表中

    也为您的 dsym 运行此命令以获取您的应用程序的 uuid

    dwarfdump --uuid xxx.app.dSYM/| tr '[:upper:]' '[:lower:]' | tr -d '-'
    

    【讨论】:

      【解决方案2】:

      此问题与How can I tell Spotlight to index my .dSYM bundles?有关

      我试图在我的 ~/Library 中强制导入 dSYM,但没有成功,所以答案是:

      FINAL SOLUTION
      
      Configure Xcode so that the archive folder is located outside of ~/Library.
      

      【讨论】:

        【解决方案3】:

        如果您从未将崩溃的设备连接到您的计算机,则说明您没有此设备的符号文件。这就是 symbolicatecrash 找不到系统库的 dsym 文件的原因。

        只需将您的设备连接到计算机并等待 xcode 下载符号文件。

        【讨论】:

          【解决方案4】:

          在第 4 行,最后一个参数应该是包含 .app 和 .dSYM 的目录。至少当我从命令行运行symbolicatecrash 脚本时,我就是这样做的。

          【讨论】:

          • 嗯,这有点帮助。对于大多数符号,它仍然“找不到任何未剥离的二进制文件......”,但现在它得到“/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/lipo:无法确定我的 dSYM 和应用程序文件的架构类型:...”。
          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2011-12-27
          • 2014-04-11
          • 2013-09-12
          • 2013-06-06
          • 2017-10-01
          • 2016-01-26
          相关资源
          最近更新 更多