crash log does not symbolicate system libraries armv7s
I am trying to analyse a crash log that a customer sent me, but I cannot get it to symbolicate the system library calls. It does symbolicate calls to my own methods correctly. That does not make it very practical to analyse what goes wrong.
I have run ‘symbolicatecrash -v’, to see what is causing the lack of symbolication. The likely cause is this:
## /Users/baraupp/Library/Developer/Xcode/iOS DeviceSupport/6.1.3 (10B329)/Symbols/usr/lib/system/libsystem_kernel.dylib doesn't contain armv7s slice
I have checked the mentioned libraries with ‘lipo’, which says that they contain ‘armv7’ but no ‘armv7s’. After searching the web, it came out that this is a difference between iPhone 4 and iPhone 5. The normal solution seems to be to plug-in an iPhone 5 device and download the libraries from there. But I don’t have an iPhone 5.
Anybody knows how to solve this?
To give you an idea how the symbolication looks like:
Thread 0 Crashed: 0 libsystem_kernel.dylib 0x3bab0350 0x3ba9f000 + 70480 1 libsystem_c.dylib 0x3ba26fb2 0x3b9f8000 + 192434 2 libsystem_c.dylib 0x3ba63366 0x3b9f8000 + 439142 3 libc++abi.dylib 0x3b00bdda 0x3b008000 + 15834 4 libc++abi.dylib 0x3b009094 0x3b008000 + 4244 5 libobjc.A.dylib 0x3b5bca58 0x3b5b4000 + 35416 6 libc++abi.dylib 0x3b009118 0x3b008000 + 4376 7 libc++abi.dylib 0x3b0091b0 0x3b008000 + 4528 8 libc++abi.dylib 0x3b00a626 0x3b008000 + 9766 9 libobjc.A.dylib 0x3b5bc9b0 0x3b5b4000 + 35248 10 CoreFoundation 0x3380829c 0x337ff000 + 37532 11 CoreFoundation 0x338080c4 0x337ff000 + 37060 12 GraphicsServices 0x373e7336 0x373e2000 + 21302 13 UIKit 0x357242b4 0x356cd000 + 357044 14 Flyskyhy 0x000f8a66 main (main.m:17) 15 Flyskyhy 0x000f8a1c 0xf6000 + 10780
- Undefined symbols for architecture armv7 SSZipArchive
- MobileVLCKit fails while compiling
- What iPhone devices will run on armv7s and arm64?
- CommonCrypto isn't building for arch armv7 iOS
- Xcode 5 and phonegap: linker errors on building for device but not for simulator
- Xcode 4 Final - “armv6 armv7” issue while linking with armv6 libs
3 Solutions Collect From Internet About “crash log does not symbolicate system libraries armv7s”
There are only two ways to solve this:
- You either need an iPhone 5 device with iOS 6.1.3 to plug into your computer so Xcode can import the symbols
- Or you need to get the symbols from another developer and replace yours with them.
Usually the symbols are part of the latest Xcode release, but Apple doesn’t always provide Xcode updates when an iOS version only contains bug-fixes but no API changes.
I ran into this issue as well with an iOS7 app using XCode5, even though I had all the correct symbols.
What I found was that I had taken my dSYM file out of the archive where spotlight could index it, but the crashlog was only getting partically symbolicated (as seen in the question). But I had left the actual .app file in an xcarchive, and it was not able to be indexed by spotlight. As soon as I copied that file out of the archive to the visible location, I was able to symbolicate properly.
In following answer of Kerni:
You can install related Xcode with your target version of iOS and copy ~/Library/Developer/Xcode/iOS DeviceSupport/
- Cocoapods staying on “analyzing dependencies”
- How to adjust UITextView's width to fit its content without wrapping?
- Xcode will not open my project
- Can't update calabash server version
- How to know exactly when a UIScrollView's scrolling has stopped?
- How to get an error description when playback fails on MPMoviePlayerController
- Preserve folder structure Cocoa Pods
- Background fetch not working
- How to create a CFDictionary in an OS X target?
- Show modal view controller with custom frame in iPad
- iPhone iOS saving data obtained from UIImageJPEGRepresentation() fails second time: ImageIO: CGImageRead_mapData 'open' failed
- Swift – Protocol extensions – Property default values
- Substitute for NSData deprecated dataWithContentsOfMappedFile
- How to check internet connection in alamofire?
- How to convert UTC date string to local time (systemTimeZone)