I\'m looking to try and symbolicate my iPhone app\'s crash reports.
I retrieved the crash reports from iTunes Connect. I have the application binary that I submitted
In order to symbolicate crashes, Spotlight must be able to find the .dSYM file that was generated at the same time the binary you submitted to Apple was. Since it contains the symbol information, you will be out of luck if it isn't available.
We use Google Crashlytics to supervise crash logs, the feeling is very timely and convenient to use.
Document links: https://docs.fabric.io/apple/crashlytics/missing-dsyms.html#missing-dsyms
All about Missing dSYMs Fabric includes a tool to automatically upload your project’s dSYM. The tool is executed through the /run script, which is added to your Run Script Build Phase during the onboarding process. There can be certain situations however, when dSYM uploads fail because of unique project configurations or if you’re using Bitcode in your app. When an upload fails, Crashlytics isn’t able to symbolicate and display crashes, and a “Missing dSYM” alert will appear on your Fabric dashboard.
Missing dSYMs can be manually uploaded following the steps outlined below.
Note: As an alternative to the automated dSYM upload tool, Fabric provides a command-line tool (upload-symbols)) that can be manually configured to run as part of your project’s build process. See the upload-symbols section below for configuration instructions.
...
I like to use Textwrangler to pinpoint errors in an original app upload binary rejection. (The crash data will be found in your itunesConnect account.) Using Sachin's method above I copy the original.crash to TextWrangler, then copy the symbolicatecrash file I've created to another TextWrangler file. Comparing the two files pinpoints differences. The symbolicatecrash file will have differences which point out the file and line number of problems.
Just a simple and updated answer for xcode 6.1.1 .
STEPS
1.Xcode>Window>Devices.
2.Select a device from a list of devices under DEVICES section.
3.Select View Device Logs.
4.Under the All Logs section you can directly drag drop the report.crash
5.Xcode will automatically Symbolicate the crash report for you.
6.You can find the Symbolicated crash report by matching its Date/Time with the Date/Time mentioned in your crash report.
In Xcode 4.2.1, open Organizer, then go to Library/Device Logs and drag your .crash file into the list of crash logs. It will be symbolicated for you after a few seconds.
Note that you must use the same instance of Xcode that the original build was archived on (i.e. the archive for your build must exist in Organizer).
I had to do a lot of hacking of the symbolicatecrash script to get it to run properly.
As far as I can tell, symbolicatecrash right now requires the .app to be in the same directory as the .dsym. It will use the .dsym to locate the .app, but it won't use the dsym to find the symbols.
You should make a copy of your symbolicatecrash before attempting these patches which will make it look in the dsym:
Around line 212 in the getSymbolPathFor_dsymUuid function
212 my @executablePath = grep { -e && ! -d } glob("$dsymdir" . "/Contents/Resources/DWARF/" . $executable);
Around line 265 in the matchesUUID function
265 return 1;