无法表示崩溃日志 - 为什么?

时间:2012-05-27 08:46:23

标签: ios xcode

我有来自用户的崩溃文件,以及来自应用商店的xarchive版本的DSYM目录。尽管如此,我没有得到函数名称的地址转换。谁能告诉我为什么?

命令行:

/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

输出:

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

事实证明我遇到了很多像这样的错误...

.....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

...这是关于实际应用的输出。

......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

2 个答案:

答案 0 :(得分:2)

您能否添加-v参数。这应该会为它试图表示的每个库带来一些错误。我怀疑iOS 5.1.1符号和app特定符号都不能通过聚光灯找到。

您是否将设备升级到5.1.1并且Xcode是否提取了符号?检查~/Library/Developer/Xcode/iOS DeviceSupport。它应包含名为5.1.1 (9B206)的目录。

关于您的应用符号:来自调试版本吗?如果是这样,你之后是否执行了另一个构建?如果是这样,这就是它不会象征应用程序特定项目的原因。符号化脚本需要app二进制文件和完全相应的dSYM。

有关详细信息,请参阅此答案:backtrace still not readable after symbolicating iPad crash log

答案 1 :(得分:2)

我想答案就在你面前。日志的第一行说明:

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

您的Xcode.app位于/ Applications中。以前(在Xcode通过Mac App Store交付之前),Xcode曾经在/ Developer中。 所以如果你跑:

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

输出将是:/ Developer 虽然它应该是/ Applications

所以解决方案是运行:

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

(必须以root身份运行才能更改设置)。然后重新启动Xcode并单击Organizer中的日志。或者如果日志不在列表中,则导入日志。现在它应该正确地象征。

顺便说一句,谢谢你冗长的问题。它带我到这个解决方案,因为我现在遇到了同样的问题。因为我使用了Xcode,所以没有看到关于Xcode-select的错误消息。

我想知道在/ Developer中安装了Xcode的人是否有同样的问题。