Search code examples
xcode7symbolicatecrashsymbolicate

No symbolication for crash files with Xcode 7.3.1


I am not getting a symbolicated crash file using Xcode 7.3.1. My current version of the app never has symbols, however an older version of the app seems OK and the crash file is symbolicated.

I have tried to manually re-symbolicate by dragging it onto a device as described in this SO answer.

I tried to manually use the symbolicatecrash utility as described by this SO Answer.

I have confirmed that the dSYM file exists in the archive and am using it in both of the above manual attempts to rebuild the symbols. Any idea what I have missed?


Solution

  • Some of the crash files we received from our customers are corrupt. Using Apple's instructions Getting Crash Logs Directly From a Device Without Xcode, the customer copied the crash log and pasted it into email.

    Something along the way corrupted the crash file though, injecting \n characters in somewhat random spots. We manually fixed the corrupted crash file by comparing it to an example from our system and symbolication worked.

    Note the incorrect new line characters in the corrupted examples below:

    Corrupt:

    Thread 0 name:  Dispatch queue: com.apple.main-thread
    Thread 0:
    0   libsystem_kernel.dylib        
    0x0000000185535188 0x185534000 + 4488
    1   libsystem_kernel.dylib        
    0x0000000185534ff8 0x185534000 + 4088
    2   CoreFoundation                
    0x00000001865325d0 0x186455000 + 906704
    

    Should be:

    Thread 0 name:  Dispatch queue: com.apple.main-thread
    Thread 0:
    0   libsystem_kernel.dylib          0x0000000185535188 0x185534000 + 4488
    1   libsystem_kernel.dylib          0x0000000185534ff8 0x185534000 + 4088
    2   CoreFoundation                  0x00000001865325d0 0x186455000 + 906704
    

    Corrupt:

    Thread 12 crashed with ARM Thread State (64-bit):
        x0: 0x0000000109020010  x1: 0x0000000109020020  x2: 0x0000000104f5c000  x3:
    0xffffffffffff63ff
        x4: 0x0000000000000001  x5: 0x0000000000000001  x6: 0x0000000108f84010  x7:
    0x0000000000000000
        x8: 0x0000200000000000  x9: 0x0000000000000000  x10: 0x0000000000000002  x11:
    0x0000000174c4bb28
    

    Should be:

    Thread 12 crashed with ARM Thread State (64-bit):
        x0: 0x0000000109020010  x1: 0x0000000109020020  x2: 0x0000000104f5c000  x3: 0xffffffffffff63ff
        x4: 0x0000000000000001  x5: 0x0000000000000001  x6: 0x0000000108f84010  x7: 0x0000000000000000
        x8: 0x0000200000000000  x9: 0x0000000000000000  x10: 0x0000000000000002  x11: 0x0000000174c4bb28
    

    Corrupt:

    Binary Images:
    0x100910000 - 0x10093ffff dyld arm64  <f54ed85a94253887886a8028e20ed8ba> /usr/lib/dyld
    0x188638000 - 0x188639fff libSystem.B.dylib arm64  <1b4d75209f4a37969a9575de48d48668>
    /usr/lib/libSystem.B.dylib
    0x18863a000 - 0x18868ffff libc++.1.dylib arm64  <b2db8b1d09283b7bafe1b2933adc5dfd>
    /usr/lib/libc++.1.dylib
    

    Should be:

    Binary Images:
    0x100910000 - 0x10093ffff dyld arm64  <f54ed85a94253887886a8028e20ed8ba> /usr/lib/dyld
    0x188638000 - 0x188639fff libSystem.B.dylib arm64  <1b4d75209f4a37969a9575de48d48668> /usr/lib/libSystem.B.dylib
    0x18863a000 - 0x18868ffff libc++.1.dylib arm64  <b2db8b1d09283b7bafe1b2933adc5dfd> /usr/lib/libc++.1.dylib