Xcode 显然不会创建应用程序的 dSYM 文件

Posted

技术标签:

【中文标题】Xcode 显然不会创建应用程序的 dSYM 文件【英文标题】:Xcode apparently does not create the app’s dSYM file 【发布时间】:2021-05-25 14:14:09 【问题描述】:

我正在开发一个 ios 应用程序。有时,当我在连接到 Xcode 的测试设备上执行开发版本时,应用会崩溃。 稍后我将它连接到 Xcode 并显示设备日志,并且可以看到崩溃日志。

不幸的是,我的 Xcode 版本 12.5 (12E262) 不代表我的应用程序。显然,Xcode 没有找到所需的 dSYM 文件,尽管我在 Targets/Build Settings 中将“Debug Information Format”设置为“DWARF with dSYM file”。

我已阅读文档“Adding Identifiable Symbol Names to a Crash Report”,尤其是 Locate a dSYM Using Spotlight 部分。因此: 在我的崩溃报告的“二进制图像:”部分中,显示了我的应用程序:

0x104c30000 - 0x104dd3fff ShopEasy arm64  <2f9607e3500937bdb7f84ad8f4c103d5> /var/containers/Bundle/Application/8CC841E3-385A-4779-97AF-1399E4D108F5/ShopEasy.app/ShopEasy

但是,如果我在 Finder 中打开 var,则文件夹 containers 是空的。

当我在终端中搜索 UUID 时使用

mdfind "com_apple_xcode_dsym_uuids == 8CC841E3-385A-4779-97AF-1399E4D108F5"

它什么也没找到。

欢迎任何帮助!

【问题讨论】:

您是否使用 dSYM 文件将调试信息格式构建设置设置为 DWARF 以用于调试构建配置?最初,Xcode 设置为为 Release 构建配置创建 dSYM 文件,而不是为 Debug 构建配置创建,因此应用程序的开发版本将没有 dSYM 文件。 是的,所有构建配置的调试信息格式都设置为 DWARF 和 dSYM 文件。 【参考方案1】:

我不确定这是否真的是解决方案: 在Target / Build Settings 中,Debug Information Format 被设置为DWARF with dSYM File。 我仅将其重置为DWARF,然后再次将其设置为DWARF with dSYM File。 现在我的崩溃日志被符号化了。

【讨论】:

以上是关于Xcode 显然不会创建应用程序的 dSYM 文件的主要内容,如果未能解决你的问题,请参考以下文章

为啥 Xcode 不为静态库生成 dSYM

如何创建 .dSYM 文件?

Xcode:如何创建 dSym 并仍然剥离符号?

Xcode 3.2.3 不会符号化日志

如何在 XCode 7.0 中创建 dSYM 文件

Xcode - UUID 与框架 dSYM 不匹配