当表示iOS崩溃时,脚本使用存储在~/Library/Developer/Xcode/iOS DeviceSupport中的iOS调试符号。在iOS 7.1.2 (11D257)中,模块列表中的所有行都具有armv7s体系结构,但是实际的可执行文件都具有这样的体系结构。
0x30c8d000 - 0x30e77fff Foundation armv7s <52121842f9863ab49b775758dd05db0b> /System/Library/Frameworks/Foundation.framework/Foundation我已经在DeviceSupport下得到了这个版本的DeviceSupport,但是系统堆栈点没有象征意义;脚本声称没有一个iOS文件有armv7s切片。事实上,如果我跑
lipo -info '~/Library/Developer/Xcode/iOS DeviceSupport/7.1.2 (11D257)/Symbols/System/Library/Frameworks/Foundation.framework/Foundation'它说只有armv7在场。
我从iPhone 4中提取了符号;它的CPU不支持armv7s。如果您有一个支持armv7s的设备(iPhone 5+,iPad 3+)和iOS 7.1.2,那么请运行相同的命令并确认您所拥有的基金会版本包含armv7s片吗?
发布于 2014-08-17 12:08:17
您可以从具有armv7s或arm64 CPU的设备中获取armv7s系统符号。iPhone 4有一个armv7 CPU,所以它显然不能为您提供armv7s符号。
https://stackoverflow.com/questions/25337090
复制相似问题