带有 XCode 4.2 的symbolicatecrash 不符号化系统符号
声明:本页面是StackOverFlow热门问题的中英对照翻译,遵循CC BY-SA 4.0协议,如果您需要使用它,必须同样遵循CC BY-SA许可,注明原文地址和作者信息,同时你必须将它归于原作者(不是我):StackOverFlow
原文地址: http://stackoverflow.com/questions/8176393/
Warning: these are provided under cc-by-sa 4.0 license. You are free to use/share it, But you must attribute it to the original authors (not me):
StackOverFlow
symbolicatecrash with XCode 4.2 not symbolicating system symbols
提问by Mike Fullerton
This is a very weird problem. I think I must be doing something wrong, but I don't know what it is. I've been using symbolicatecrash for several years with no problems. The issue I'm seeing is that symbolicatecrash is not showing symbols for the system libraries, but it IS showing symbols for my application. I've tried everything I can think of to resolve this with no luck.
这是一个非常奇怪的问题。我想我一定是做错了什么,但我不知道那是什么。我已经使用symbolicatecrash 好几年了,没有任何问题。我看到的问题是symbolicatecrash 没有显示系统库的符号,但它显示了我的应用程序的符号。我已经尝试了所有我能想到的方法来解决这个问题,但没有运气。
Note that I'm getting the same results on three different machines, 2 Lion, 1 Snow Leopard.
请注意,我在三台不同的机器上得到了相同的结果,2 台 Lion,1 台雪豹。
Example command line: /Developer/Platforms/iPhoneOS.platform/Developer/Library/PrivateFrameworks/DTDeviceKit.framework/Versions/A/Resources/symbolicatecrash /Users/mike/Downloads/mycrash-iPad.crash
示例命令行:/Developer/Platforms/iPhoneOS.platform/Developer/Library/PrivateFrameworks/DTDeviceKit.framework/Versions/A/Resources/symbolicatecrash /Users/mike/Downloads/mycrash-iPad.crash
Note also that I get the same results when I drag the file into the logs section of the XCode 4.2 logs organizer window and wait for XCode to symbolicate the file.
另请注意,当我将文件拖到 XCode 4.2 日志管理器窗口的日志部分并等待 XCode 对文件进行符号化时,我得到了相同的结果。
Here's an example of a crash in my code with the partially symbolicated symbols:
这是我的代码中带有部分符号化符号的崩溃示例:
Last Exception Backtrace:
0 CoreFoundation 0x33dae8bf 0x33cf5000 + 759999
1 libobjc.A.dylib 0x354ca1e5 0x354c1000 + 37349
2 CoreFoundation 0x33dae7b9 0x33cf5000 + 759737
3 CoreFoundation 0x33dae7db 0x33cf5000 + 759771
4 CoreFoundation 0x33d1b6bb 0x33cf5000 + 157371
5 myZenfolio 0x001a551d -[GtDataSourceManager setDataSource:forKey:] (GtDataSource.m:59)
6 myZenfolio 0x0004c793 -[ZfUserAccountViewController doUpdateDataSourceManager:] (ZfUserAccountViewController.m:202)
7 myZenfolio 0x0022f853 -[GtEditObjectViewController tableViewWillReloadData:] (GtEditObjectViewController.m:803)
8 CoreFoundation 0x33d0d22b 0x33cf5000 + 98859
9 myZenfolio 0x002557b9 -[GtTableView reloadData] (GtTableView.m:48)
10 myZenfolio 0x0004c36d -[ZfUserAccountViewController _updateFromCache] (ZfUserAccountViewController.m:160)
11 CoreFoundation 0x33d0d22b 0x33cf5000 + 98859
12 Foundation 0x3187c757 0x317d8000 + 673623
13 CoreFoundation 0x33d82b03 0x33cf5000 + 580355
14 CoreFoundation 0x33d822cf 0x33cf5000 + 578255
15 CoreFoundation 0x33d81075 0x33cf5000 + 573557
16 CoreFoundation 0x33d044dd 0x33cf5000 + 62685
17 CoreFoundation 0x33d043a5 0x33cf5000 + 62373
18 GraphicsServices 0x35944fcd 0x35941000 + 16333
19 UIKit 0x34e49743 0x34e18000 + 202563
20 myZenfolio 0x00004017 main (main.m:15)
21 myZenfolio 0x00003fd0 start + 40
I've run the symbolicate crash command with -v and it's finding the app.dSym files okay, it just doesn't seem to be finding the library symfiles which seems to be the opposite problem most people are having. Facepalm.
我已经用 -v 运行了符号崩溃命令,它找到了 app.dSym 文件,但似乎没有找到库符号文件,这似乎是大多数人遇到的相反问题。面掌。
For example, here's the output from a -v run for the CoreFoundation lib:
例如,这是 CoreFoundation 库的 -v 运行的输出:
............fetching symbol file for CoreFoundation--[undef]
Searching [/Developer/Platforms/iPhoneOS.platform/DeviceSupport/5.0 (9A334)/Symbols/System/Library/Frameworks/CoreFoundation.framework/CoreFoundation /Developer/Platforms/iPhoneOS.platform/DeviceSupport/Latest/Symbols/System/Library/Frameworks/CoreFoundation.framework/CoreFoundation]...--[/Developer/Platforms/iPhoneOS.platform/DeviceSupport/5.0 (9A334)/Symbols/System/Library/Frameworks/CoreFoundation.framework/CoreFoundation] Running xcrun -sdk iphoneos lipo -info '/Developer/Platforms/iPhoneOS.platform/DeviceSupport/5.0 (9A334)/Symbols/System/Library/Frameworks/CoreFoundation.framework/CoreFoundation'
Running xcrun -sdk iphoneos otool -arch armv7 -l '/Developer/Platforms/iPhoneOS.platform/DeviceSupport/5.0 (9A334)/Symbols/System/Library/Frameworks/CoreFoundation.framework/CoreFoundation'
Given UUID de9eefc6109735369cfd8f3de9895da0 for '/Developer/Platforms/iPhoneOS.platform/DeviceSupport/5.0 (9A334)/Symbols/System/Library/Frameworks/CoreFoundation.framework/CoreFoundation' is really UUID a2dbc131fdc0364e822339ca2926b6e8
-- NO MATCH
--[/Developer/Platforms/iPhoneOS.platform/DeviceSupport/Latest/Symbols/System/Library/Frameworks/CoreFoundation.framework/CoreFoundation] Running xcrun -sdk iphoneos lipo -info '/Developer/Platforms/iPhoneOS.platform/DeviceSupport/Latest/Symbols/System/Library/Frameworks/CoreFoundation.framework/CoreFoundation'
Running xcrun -sdk iphoneos otool -arch armv7 -l '/Developer/Platforms/iPhoneOS.platform/DeviceSupport/Latest/Symbols/System/Library/Frameworks/CoreFoundation.framework/CoreFoundation'
Given UUID de9eefc6109735369cfd8f3de9895da0 for '/Developer/Platforms/iPhoneOS.platform/DeviceSupport/Latest/Symbols/System/Library/Frameworks/CoreFoundation.framework/CoreFoundation' is really UUID a2dbc131fdc0364e822339ca2926b6e8
-- NO MATCH
Searching in Spotlight for dsym with UUID of de9eefc6109735369cfd8f3de9895da0
Running mdfind "com_apple_xcode_dsym_uuids == DE9EEFC6-1097-3536-9CFD-8F3DE9895DA0"
@dsym_paths = ( )
@exec_names = ( )
Did not find executable for dsym
## Warning: Can't find any unstripped binary that matches version of /System/Library/Frameworks/CoreFoundation.framework/CoreFoundation
I really am at a loss to figure out what to try next.
我真的不知道下一步该尝试什么。
Does anyone have any ideas? I'm fresh out. Your help will be much appreciated!
有没有人有任何想法?我刚出来。您的帮助将不胜感激!
thanks, Mike
谢谢,迈克
More info, now I'm getting an error in the symbolicatecrash output.
更多信息,现在我在symbolicatecrash 输出中遇到错误。
/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/size: for architecture armv7 object: /Users/mike/Library/Developer/Xcode/iOS DeviceSupport/5.0.1 (9A405)/Symbols/System/Library/Frameworks/Foundation.framework/Foundation truncated or malformed object (dataoff field of LC_FUNCTION_STARTS command 22 extends past the end of the file)
Error in symbol file for /Users/mike/Library/Developer/Xcode/iOS DeviceSupport/5.0.1 (9A405)/Symbols/System/Library/Frameworks/Foundation.framework/Foundation
/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/size: for architecture armv7 object: /Users/mike/Library/Developer/Xcode/iOS DeviceSupport/5.0.1 (9A405)/Symbols/System/Library/PrivateFrameworks/GraphicsServices.framework/GraphicsServices truncated or malformed object (dataoff field of LC_FUNCTION_STARTS command 17 extends past the end of the file)
Error in symbol file for /Users/mike/Library/Developer/Xcode/iOS DeviceSupport/5.0.1 (9A405)/Symbols/System/Library/PrivateFrameworks/GraphicsServices.framework/GraphicsServices
/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/size: for architecture armv7 object: /Users/mike/Library/Developer/Xcode/iOS DeviceSupport/5.0.1 (9A405)/Symbols/System/Library/Frameworks/UIKit.framework/UIKit truncated or malformed object (dataoff field of LC_FUNCTION_STARTS command 41 extends past the end of the file)
Error in symbol file for /Users/mike/Library/Developer/Xcode/iOS DeviceSupport/5.0.1 (9A405)/Symbols/System/Library/Frameworks/UIKit.framework/UIKit
/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/size: for architecture armv7 object: /Users/mike/Library/Developer/Xcode/iOS DeviceSupport/5.0.1 (9A405)/Symbols/System/Library/PrivateFrameworks/WebCore.framework/WebCore truncated or malformed object (dataoff field of LC_FUNCTION_STARTS command 28 extends past the end of the file)
Error in symbol file for /Users/mike/Library/Developer/Xcode/iOS DeviceSupport/5.0.1 (9A405)/Symbols/System/Library/PrivateFrameworks/WebCore.framework/WebCore
/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/size: for architecture armv7 object: /Users/mike/Library/Developer/Xcode/iOS DeviceSupport/5.0.1 (9A405)/Symbols/usr/lib/libobjc.A.dylib truncated or malformed object (dataoff field of LC_FUNCTION_STARTS command 12 extends past the end of the file)
Error in symbol file for /Users/mike/Library/Developer/Xcode/iOS DeviceSupport/5.0.1 (9A405)/Symbols/usr/lib/libobjc.A.dylib
/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/size: for architecture armv7 object: /Users/mike/Library/Developer/Xcode/iOS DeviceSupport/5.0.1 (9A405)/Symbols/usr/lib/system/libdispatch.dylib truncated or malformed object (dataoff field of LC_FUNCTION_STARTS command 11 extends past the end of the file)
Error in symbol file for /Users/mike/Library/Developer/Xcode/iOS DeviceSupport/5.0.1 (9A405)/Symbols/usr/lib/system/libdispatch.dylib
/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/size: for architecture armv7 object: /Users/mike/Library/Developer/Xcode/iOS DeviceSupport/5.0.1 (9A405)/Symbols/usr/lib/system/libsystem_c.dylib truncated or malformed object (dataoff field of LC_FUNCTION_STARTS command 11 extends past the end of the file)
Error in symbol file for /Users/mike/Library/Developer/Xcode/iOS DeviceSupport/5.0.1 (9A405)/Symbols/usr/lib/system/libsystem_c.dylib
/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/size: for architecture armv7 object: /Users/mike/Library/Developer/Xcode/iOS DeviceSupport/5.0.1 (9A405)/Symbols/System/Library/Frameworks/CoreFoundation.framework/CoreFoundation truncated or malformed object (dataoff field of LC_FUNCTION_STARTS command 15 extends past the end of the file)
Error in symbol file for /Users/mike/Library/Developer/Xcode/iOS DeviceSupport/5.0.1 (9A405)/Symbols/System/Library/Frameworks/CoreFoundation.framework/CoreFoundation
/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/size: for architecture armv7 object: /Users/mike/Library/Developer/Xcode/iOS DeviceSupport/5.0.1 (9A405)/Symbols/usr/lib/system/libsystem_kernel.dylib truncated or malformed object (dataoff field of LC_FUNCTION_STARTS command 10 extends past the end of the file)
Error in symbol file for /Users/mike/Library/Developer/Xcode/iOS DeviceSupport/5.0.1 (9A405)/Symbols/usr/lib/system/libsystem_kernel.dylib
采纳答案by ARsteve
The following solved the problem for me:
以下为我解决了这个问题:
- Delete the folder ~/Library/Developer/Xcode/iOS DeviceSupport/5.0.1 (9A405)
- Reattach your iOS device and it will automatically import the correct symbols.
- 删除文件夹 ~/Library/Developer/Xcode/iOS DeviceSupport/5.0.1 (9A405)
- 重新连接您的 iOS 设备,它会自动导入正确的符号。
After that the crash reports could be symbolicated correctly. (to re-symbolicate a crash report, open the Organizer, click on 'Reveal in Finder' and delete the symbolicated version)
之后,崩溃报告可以正确符号化。(要重新符号化崩溃报告,请打开管理器,单击“在 Finder 中显示”并删除符号化版本)
回答by arlomedia
It looks like this is an acknowledged bug with Xcode 4.2 and iOS 5:
看起来这是 Xcode 4.2 和 iOS 5 的公认错误:
https://devforums.apple.com/message/578722
https://devforums.apple.com/message/578722
A new Xcode beta was released for Lion yesterday, does that work for you? I can't try it myself because it's not available for Snow Leopard yet.
昨天为 Lion 发布了新的 Xcode 测试版,这对您有用吗?我无法自己尝试,因为它尚不可用于 Snow Leopard。