Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

xcode 4.3.2 archive build not creating dsym

I have an old project developed with Xcode 4, i remember doing xarchive on Xcode which generated dsym properly. but on the latest version that is x 4.3.2 the xarchive created doesn't have the dsym file. i verified the setting these setting

  1. dwarf with dsym for both debug and release

what else is causing issue, is there any other setting which i should take care ? please advice a way to fix this issue.

note: i selecting archive-debug and not archive release in the scheme. thanks.

like image 209
thndrkiss Avatar asked Jun 14 '12 03:06

thndrkiss


2 Answers

Verify that the Generate Debug Symbols are set to YES in Build Settings. Make sure you clean your target before compiling. After doing so, make sure you're looking for the .dSYM in the right location.

  • Right Click Archive from Organizer and Show In Finder
  • Right click .xarchive File and Show Package Contents
  • Navigate to dSYMs directory.
like image 104
skram Avatar answered Sep 30 '22 15:09

skram


Identifying the problem

  1. Check your build settings for both release and debug configuration:

    • Generate Debug Symbols → Yes
    • Debug Information... → DWARF with DSYM
    • Deployment Postprocessing → YES
    • Strip Linked Product... → No
    • Strip Debug... → No
  2. Try 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

like image 29
nikans Avatar answered Sep 30 '22 14:09

nikans