Symbolicating iOS 8 Crash Logs

Hiya! This page gets the most traffic of all the content on my site! Whoa!
I decided to try and help you all with this problem.

I've started writing an application for symbolicating crash logs.
Want to try it? You can download a beta here.


If you're having crash logs come in via iTunes Connect or another service and having trouble symbolicating them, you're not alone. I spent about an hour trying to coerce Xcode into showing me the location of a crash in my application code, but Xcode 5 is not able to symbolicate crashes from iOS 8 because its developer toolchain lacks the necessary symbol files. The solution is to use one of the Xcode 6 beta builds, which include the symbol files for iOS 8. I have Xcode 6 Beta 4 installed, and it doesn't have the Device Logs pane of the Devices window like Xcode 5 does, so you'll need to use `symbolicatecrash`, the script the powers resymbolication in Xcode.

  1. Gather your crash log and the dSYM file for your app.
  2. Open a terminal and navigate to where you put your crash log and dSYM file.
    • We'll call them `myapp.crash` and `myapp.app.dSYM`
  3. Run `sudo xcode-select --switch /Applications/Xcode6-Beta4.app/Contents/Developer`
    • Replace `Xcode6-Beta4.app` with whichever version you have installed.
  4. Finally, run:

DEVELOPER_DIR=`xcode-select -print-path` /Applications/Xcode6-Beta4.app/Contents/SharedFrameworks/DTDeviceKitBase.framework/Versions/A/Resources/symbolicatecrash -o ./myapp-resymbolicated.crash ./myapp.crash ./myapp.app.dSYM

If everything went smoothly, you'll now have a file in the current directory named `myapp-resymbolicated.crash` that contains the resymbolicated crash report. That should be it!

Did you find this helpful? You should follow me on Twitter.