我有来自用户的崩溃文件,以及来自应用商店的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
答案 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的人是否有同样的问题。