无法将 dSYM 文件复制到存档中

Posted

技术标签:

【中文标题】无法将 dSYM 文件复制到存档中【英文标题】:Unable to copy dSYM file into archive 【发布时间】:2010-12-16 22:42:24 【问题描述】:

每当我从 XCode 运行“构建和存档”时,我都会收到以下消息:


请确保您的应用程序已将“Debug Information Format”构建设置设置为“DWARF with dSYM File”。


我检查了我的调试格式并将其设置为建议值(DWARF 与 dSYM)。有没有其他人遇到过这个问题,如果有,您是如何解决的?

【问题讨论】:

【参考方案1】:

尝试在您尝试构建和存档的目标的构建设置中将“生成调试符号”设置为 true。

这为我解决了问题!

【讨论】:

我只是第四次查看了这个(我总是忘记设置什么标志来处理那个错误)。这篇文章非常有帮助,我希望我能投票超过一分。 嗨 Sven,我认为这个问题在 Xcode 4 中不再相关。您还在使用 Xcode 3 还是这也适用于新的 4.x 版本?感谢您的赞誉:)! 仍在 3 上,所以不知道它是否与 4 相关。我需要尽快升级,但我会尽量避免那个中期项目。【参考方案2】:

这对我有用,我希望它可以帮助那里的人...... 转到构建设置并搜索“生成调试符号”并将其设置为是。

然后在构建设置中搜索调试信息格式并将“调试信息格式”设置为“DWARF with dSYM file”

【讨论】:

【参考方案3】:

我刚刚遇到了同样的问题,但是我有一个构建脚本,它在 Xcode 之前删除了 dSYM 文件。所以它不存在,这就是 Xcode 哭泣的原因。

我附上了一个截图,所以也许下一个遇到该问题的可以更快地恢复。

【讨论】:

【参考方案4】:

“生成调试符号”解决方案也对我有用。在它工作一次之后,我再次禁用了该设置,我再次构建和归档工作,生成的文件比启用调试符号的版本小 700kb。不确定这是否是应用在应用商店后的实际节省,但不会有什么坏处!

【讨论】:

【参考方案5】:

发布和调试配置的构建设置应如下所示:

生成调试符号 → 是 调试信息... → DWARF with DSYM 部署后处理 → 是 剥离链接产品... → 否 条带调试... → 否

如果还是不行,请尝试检查报告导航器。

关键是,dSYM 文件可能在其他位置生成,或者根本不生成。

在我的例子中,dSYM 文件还没有生成,也没有像"Generate Appname.dSYM ...in path" 这样的对应行 但是已经安装了 Fabric,它记录了 dSYM 文件不存在的事实:

只需通过“dSYM”提交报告导航器。

如果 dSYM 未在相应文件夹中生成

检查环境变量,尤其是DWARF_DSYM_FOLDER_PATHDWARF_DSYM_FILE_NAME

要将 dSYM 嵌入应用程序包中,只需将 DWARF_DSYM_FOLDER_PATH 设置为 $(CONFIGURATION_BUILD_DIR)/$(EXECUTABLE_FOLDER_PATH) 并将 DWARF_DSYM_FILE_NAME 设置为 $(EXECUTABLE_NAME).dSYM

现在构建应该为您的目标创建 dSYM

【讨论】:

以上是关于无法将 dSYM 文件复制到存档中的主要内容,如果未能解决你的问题,请参考以下文章

Crashlytics 更新到 Fabric:无法复制 dSYM

迭代文件夹和子文件夹/文件,并将电子表格数据复制到存档表

将文件从AWS S3复制到Azure存储存档层

Xcode 存档中的空 dSYM 文件夹

dsym 更多信息显示——

为啥我的应用存档中有很多 UUID dsym?