1

I have a crash file from a user, and a DSYM dir from the xarchive build for the app store. Despite that, I don't get a translation of addresses to function names. Can anybody tell me why?

Command line:

/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/Library/PrivateFrameworks/DTDeviceKit.framework/Versions/A/Resources/symbolicatecrash TypO\ Lite_2012-05-26-221125_GC-64-4G-iPad.crash TypO\ Lite.app.dSYM

Output:

Error: No developer directory found at /Developer. Run /usr/bin/xcode-select to update the developer directory path.
Incident Identifier: 485C4142-0FCF-4F92-A06E-31FFA6FC5F8C
CrashReporter Key:   bf6e22e903e9819111c4d7498eb6006d32f64472
Hardware Model:      iPad3,3
Process:         TypO Lite [1357]
Path:            /var/mobile/Applications/527E2243-2DFB-4934-A9D3-F5C7C13FCBC0/TypO Lite.app/TypO Lite
Identifier:      TypO Lite
Version:         ??? (???)
Code Type:       ARM (Native)
Parent Process:  launchd [1]

Date/Time:       2012-05-26 22:11:25.868 +1000
OS Version:      iPhone OS 5.1.1 (9B206)
Report Version:  104

Exception Type:  EXC_CRASH (SIGABRT)
Exception Codes: 0x00000000, 0x00000000
Crashed Thread:  0

Last Exception Backtrace:
0   CoreFoundation                  0x32de088f 0x32d27000 + 759951
1   libobjc.A.dylib                 0x34d85259 0x34d7c000 + 37465
2   TypO Lite                       0x000f8119 0xe7000 + 69913
3   TypO Lite                       0x000f8725 0xe7000 + 71461
4   TypO Lite                       0x000f018f 0xe7000 + 37263
5   TypO Lite                       0x000f1f33 0xe7000 + 44851
6   TypO Lite                       0x00116453 0xe7000 + 193619
7   TypO Lite                       0x00115d51 0xe7000 + 191825
8   UIKit                           0x3531fcab 0x352e4000 + 244907
9   UIKit                           0x353197dd 0x352e4000 + 219101
10  UIKit                           0x352e7ac3 0x352e4000 + 15043
11  UIKit                           0x352e7567 0x352e4000 + 13671
12  UIKit                           0x352e6f3b 0x352e4000 + 12091
13  GraphicsServices                0x32e8422b 0x32e7f000 + 21035
14  CoreFoundation                  0x32db4523 0x32d27000 + 578851
15  CoreFoundation                  0x32db44c5 0x32d27000 + 578757
16  CoreFoundation                  0x32db3313 0x32d27000 + 574227
17  CoreFoundation                  0x32d364a5 0x32d27000 + 62629
18  CoreFoundation                  0x32d3636d 0x32d27000 + 62317
19  UIKit                           0x3531886b 0x352e4000 + 215147
20  UIKit                           0x35315cd5 0x352e4000 + 203989
21  TypO Lite                       0x000e8343 0xe7000 + 4931
22  TypO Lite                       0x000e8324 0xe7000 + 4900

It turns out I am getting a lot of errors like these...

.....fetching symbol file for libc++abi.dylib--[undef] 
Searching [/Users/andersprivat/Library/Developer/Xcode/iOS DeviceSupport/5.1.1 (9B206)/Symbols/usr/lib/libc++abi.dylib]...--[/Users/andersprivat/Library/Developer/Xcode/iOS DeviceSupport/5.1.1 (9B206)/Symbols/usr/lib/libc++abi.dylib] Running xcrun -sdk iphoneos lipo -info '/Users/andersprivat/Library/Developer/Xcode/iOS DeviceSupport/5.1.1 (9B206)/Symbols/usr/lib/libc++abi.dylib'
Error: No developer directory found at /Developer. Run /usr/bin/xcode-select to update the developer directory path.
## /Users/andersprivat/Library/Developer/Xcode/iOS DeviceSupport/5.1.1 (9B206)/Symbols/usr/lib/libc++abi.dylib doesn't contain armv7 slice
-- NO MATCH
Searching in Spotlight for dsym with UUID of bab4dcbfc5943d3fbb637342d35e8045
Running mdfind "com_apple_xcode_dsym_uuids == BAB4DCBF-C594-3D3F-BB63-7342D35E8045"
@dsym_paths = (  )
@exec_names = (  )
Did not find executable for dsym
## Warning: Can't find any unstripped binary that matches version of /usr/lib/libc++abi.dylib

...and here's the output regarding the actual app.

......fetching symbol file for TypO Lite--[undef] 
Searching []...-- NO MATCH
Searching in Spotlight for dsym with UUID of f166deb83d95370dba90daf9745afe82
Running mdfind "com_apple_xcode_dsym_uuids == F166DEB8-3D95-370D-BA90-DAF9745AFE82"
Running mdls -name com_apple_xcode_dsym_paths \/Users\/andersprivat\/Desktop\/TypO\ Lite\.app\.dSYM
@dsym_paths = ( /Users/andersprivat/Desktop/TypO Lite.app.dSYM/Contents/Resources/DWARF/TypO Lite )
@exec_names = ( TypO Lite )
Running mdfind "kMDItemContentType == com.apple.application-bundle && kMDItemFSName == 'TypO Lite.app'"
Running mdfind "kMDItemContentType == public.unix-executable && kMDItemFSName == 'TypO Lite'"
Running xcrun -sdk iphoneos lipo -info '/Users/andersprivat/Library/Application Support/iPhone Simulator/5.1/Applications/AB89FB64-C669-4FA4-9351-F3A9FC5D6709/TypO Lite.app/TypO Lite'
Error: No developer directory found at /Developer. Run /usr/bin/xcode-select to update the developer directory path.
## /Users/andersprivat/Library/Application Support/iPhone Simulator/5.1/Applications/AB89FB64-C669-4FA4-9351-F3A9FC5D6709/TypO Lite.app/TypO Lite doesn't contain armv7 slice
UUID of executable is: f166deb83d95370dba90daf9745afe82
Executable name: /Users/andersprivat/Library/Application Support/iPhone Simulator/5.1/Applications/AB89FB64-C669-4FA4-9351-F3A9FC5D6709/TypO Lite.app/TypO Lite

UUID doesn't match dsym for executable /Users/andersprivat/Library/Application Support/iPhone Simulator/5.1/Applications/AB89FB64-C669-4FA4-9351-F3A9FC5D6709/TypO Lite.app/TypO Lite
Running xcrun -sdk iphoneos lipo -info '/Users/andersprivat/Documents/Builds/Debug-iphonesimulator/TypO Lite.app/TypO Lite'
Error: No developer directory found at /Developer. Run /usr/bin/xcode-select to update the developer directory path.
## /Users/andersprivat/Documents/Builds/Debug-iphonesimulator/TypO Lite.app/TypO Lite doesn't contain armv7 slice
UUID of executable is: f166deb83d95370dba90daf9745afe82
Executable name: /Users/andersprivat/Documents/Builds/Debug-iphonesimulator/TypO Lite.app/TypO Lite

UUID doesn't match dsym for executable /Users/andersprivat/Documents/Builds/Debug-iphonesimulator/TypO Lite.app/TypO Lite
Running xcrun -sdk iphoneos lipo -info '/Users/andersprivat/Documents/Builds/Debug-iphoneos/TypO Lite.app/TypO Lite'
Error: No developer directory found at /Developer. Run /usr/bin/xcode-select to update the developer directory path.
## /Users/andersprivat/Documents/Builds/Debug-iphoneos/TypO Lite.app/TypO Lite doesn't contain armv7 slice
UUID of executable is: f166deb83d95370dba90daf9745afe82
Executable name: /Users/andersprivat/Documents/Builds/Debug-iphoneos/TypO Lite.app/TypO Lite

UUID doesn't match dsym for executable /Users/andersprivat/Documents/Builds/Debug-iphoneos/TypO Lite.app/TypO Lite
Did not find executable for dsym
## Warning: Can't find any unstripped binary that matches version of /var/mobile/Applications/527E2243-2DFB-4934-A9D3-F5C7C13FCBC0/TypO Lite.app/TypO Lite
Sport
  • 8,570
  • 6
  • 46
  • 65
  • Have you check this somewhat related question: http://stackoverflow.com/questions/3498389/why-would-one-crash-log-symbolicate-and-not-another – nhahtdh May 27 '12 at 09:12
  • try to drag and drop the crash log in the xcode organizer .. it will be symbolicated automatically. – Malek_Jundi May 27 '12 at 10:20
  • Hmm, dragging at dropping does nothing except giving me a message about that XCode is scanning the file, but nothing else happens. – Anders Sewerin Johansen May 27 '12 at 11:04

2 Answers2

2

Could you please add the -v parameter. That should give you some lots of errors for each library it tries to symbolicate. I suspect neither the iOS 5.1.1 symbols, nor the app specific symbols could be found via spotlight.

Did you upgrade a device to 5.1.1 and did Xcode extract the symbols? Check ~/Library/Developer/Xcode/iOS DeviceSupport. It should contain a directory named 5.1.1 (9B206).

Regarding your apps symbols: was that from a debug build? If so, did you execute another build afterwards? If so, this is the reason it won't symbolicate the app specific items too. The symbolication script needs the app binary and the exact corresponding dSYM for it.

See this answer for more details on that: backtrace still not readable after symbolicating iPad crash log

Community
  • 1
  • 1
Kerni
  • 15,241
  • 5
  • 36
  • 57
  • Added the information. Seems to me that I just don't have the right build available anywhere :( – Anders Sewerin Johansen Jun 01 '12 at 08:36
  • Right. To get the iOS symbols, update any of your developer devices to 5.1.1 and connect it to Xcode. It should then import the symbols. Regarding your app, make sure to use Xcode archive for every beta or release distribution. This will archive the dSYM and app binary for later use, e.g. symbolication of crash reports. If you don't archive, every build run will overwrite the files from the last build, making it impossible to symbolicate. You could in addition use a crash reporting framework and or services to automate everything, e.g. HockeyKit.net or HockeyApp.net (I am a developer of both) – Kerni Jun 01 '12 at 09:53
2

I suppose the answer is right in front of you. The first line of your log states:

Error: No developer directory found at /Developer. Run /usr/bin/xcode-select to update the developer directory path.

Your Xcode.app is in /Applications. Formerly (before Xcode was delivered via the Mac App Store), Xcode used to be in /Developer. So if you run:

/usr/bin/xcode-select -print-path

The output will be: /Developer While it should be /Applications

So the solution is to run:

sudo /usr/bin/xcode-select -switch /Applications

(It must be run as root to change the setting). Then restart Xcode and click on the log in Organizer. Or import the log if it is not in the list. Now it should symbolicate correctly.

BTW, thanks for your verbose question. It brought me to this solution, because I was having the same problem right now. And because I used Xcode, I did not see the error message about Xcode-select.

I am wondering if anybody that had Xcode installed in /Developer has the same problem.

Bjinse
  • 1,339
  • 12
  • 25
  • Alternatively: Do what I did, and sign up with Crittercism. They have a very nice system for error tracking and reporting, that will also symbolicate your crash reports. You do have to upload the DSYMs, but from that point on their system will properly match DSYM files to the crashes. – Anders Sewerin Johansen Aug 07 '12 at 16:13
  • Switching to /Applications returned an error "invalid developer directory" for me, but switching to "/Applications/Xcode.app/Contents/Developer" as suggested by http://stackoverflow.com/a/17980786/462162 worked. – arlomedia Feb 03 '14 at 20:44