Xcode archive not creating DSYM file

belsokar picture belsokar · Dec 28, 2012 · Viewed 22k times · Source

For most of my projects, I setup an "archive" scheme to archive my project, creating an IPA and DSYM that I can upload to TestFlight.

However, I'm working on a more complicated project that has several targets within the project workspace, quite a few static linked libraries. I have gone through each target and set the following for all configurations:

  • Deployment Postprocessing -> NO
  • Strip Linked Product... -> No
  • Strip Debug... -> No
  • Generate Debug Symbols -> Yes
  • Debug Information... -> DWARF with DSYM

I am using Xcode 4.5.2. I have done this for multitudes of projects with no issues. This is the first where something seems to be preventing the DSYM file from being created.

No matter what I try, my archive build will not generate a .DSYM file

Answer

nikans picture nikans · Jul 14, 2016

Identifying the problem

As @belsokar suggested, check the Report Navigator. In my case, the dSYM file has not been generated, and there hasn't been a corresponding line that goes like "Generate Appname.dSYM ...in {path}" But there's been Fabric installed, and it logged the fact of the dSYM file's absence:

no dsym

Just filer the Report Navigator by "dSYM".

Fixing

In my case I've just had to do what I'm asked of:

DEBUG_INFORMATION_FORMAT should be set to dwarf-with-dsym for ALL configurations.

Also, it may turn out that dSYM file is being generated in an unexpected place. Check environment variables, especially DWARF_DSYM_FOLDER_PATH and DWARF_DSYM_FILE_NAME.

To embed the dSYM within the app bundle, just set DWARF_DSYM_FOLDER_PATH to $(CONFIGURATION_BUILD_DIR)/$(EXECUTABLE_FOLDER_PATH) and DWARF_DSYM_FILE_NAME to $(EXECUTABLE_NAME).dSYM

Checking

Now the build should create dSYM for your target

generate target.dSYM