Xcode 存档未创建 DSYM 文件

问题描述 投票:0回答:8

对于我的大多数项目,我设置了一个“存档”方案来存档我的项目,创建一个可以上传到 TestFlight 的 IPA 和 DSYM。

但是,我正在开发一个更复杂的项目,该项目在项目工作区中有多个目标,有很多静态链接库。 我已经检查了每个目标并为所有配置设置了以下内容:

  • 部署后处理 -> 否
  • 剥离链接产品... -> 否
  • 剥离调试... -> 否
  • 生成调试符号 -> 是
  • 调试信息... -> DWARF 与 DSYM

我使用的是 Xcode 4.5.2。 我已经为许多项目做到了这一点,没有出现任何问题。 这是第一个似乎阻止创建 DSYM 文件的地方。

无论我如何尝试,我的存档构建都不会生成 .DSYM 文件

ios xcode archive debug-symbols dsym
8个回答
8
投票

找出问题

正如 @belsokar 建议的那样,检查报告导航器。 就我而言,dSYM 文件尚未生成,并且没有类似

"Generate Appname.dSYM ...in {path}"
的相应行 但是已经安装了 Fabric,并且它记录了 dSYM 文件不存在的事实:

no dsym

只需通过“dSYM”归档报告导航器即可。

修复

就我而言,我只需要做我被要求的事情:

所有的 DEBUG_INFORMATION_FORMAT 应设置为 dwarf-with-dsym 配置。

此外,dSYM 文件可能是在意外的地方生成的。检查环境变量,尤其是

DWARF_DSYM_FOLDER_PATH
DWARF_DSYM_FILE_NAME

要将 dSYM 嵌入到应用程序包中,只需将

DWARF_DSYM_FOLDER_PATH
设置为
$(CONFIGURATION_BUILD_DIR)/$(EXECUTABLE_FOLDER_PATH)
并将
DWARF_DSYM_FILE_NAME
设置为
$(EXECUTABLE_NAME).dSYM

检查中

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

generate target.dSYM



6
投票

xcode - > product -> Archive

您会看到档案窗口

1 选择应用程序的任何存档,右键单击它,然后选择在查找器中显示

2 您会看到 aapname.xcarchive 文件,右键单击它并选择显示包内容

3 你看到 dSYMs 文件夹,打开它并获得

.dSYM
文件

:)


0
投票

一些研究技巧。

  • 检查日志导航器。 我进入这个视图(我很少使用这个视图,所以我倾向于忘记它的存在),我意识到 .DSym 文件实际上正在创建。

  • 检查构建目录配置,看看它们是默认的还是自定义的...在我的例子中,它们是自定义的,所以它们没有被放置在典型的默认位置。


0
投票

正如主要答案中提到的,

DWARF_DSYM_FOLDER_PATH
的值决定了 dSYM 的去向。 默认值为
$(CONFIGURATION_BUILD_DIR)
,因此如果您有自定义
CONFIGURATION_BUILD_DIR
设置,它可以更改 DWARF_DSYM_FOLDER_PATH,以便 dSYM 不会被复制到 .xcarchive 中。 我还发现自定义
SYMROOT
设置也可以更改路径,并且可能还覆盖其他一些设置。

通常在存档构建期间,CONFIGURATION_BUILD_DIR 和 DWARF_DSYM_FOLDER_PATH 值将位于“ArchiveIntermediates”文件夹下的某个位置,其中的内容可能会复制到最终的 .xcarchive。

如果您可以避免覆盖这些设置,那可能会更好,否则 DWARF_DSYM_FOLDER_PATH 可能也必须被覆盖以指向正确的位置,或者需要构建后步骤来从 .dSYM 文件夹结束的位置复制它们到 XXX.xcarchive/dSYMS 文件夹。


0
投票

DWARF_DSYM_FILE_SHOULD_ACCOMPANY_PRODUCT=YES
将 .dsym 文件复制到我的项目中的存档中。

此外,我没有更改默认的

DWARF_DSYM_FOLDER_PATH
DWARF_DSYM_FILE_NAME
值。


0
投票

在“构建设置”->“构建选项”->“调试信息格式”->“更新为仅 DWARF”中:

enter image description here


-1
投票

这是解决方法帮助了我:

  1. 登录 iTunes Connect 并前往“我的” 应用程序。
  2. 单击您尝试下载 dSYM 的应用程序 转到“活动”选项卡。
  3. 单击您想要展开的版本,然后 显示所有上传的版本。
  4. 单击您想要的构建。
  5. 您将看到有关该版本的详细信息,以及右下角“包含符号”标题下下载 dSYM 的选项。
© www.soinside.com 2019 - 2024. All rights reserved.