How do I symbolicate a crash log for armv7 on iOS 8.1.1 - xcode6

I've got some crash logs from a user running iOS 8.1.1 on an armv7 device. Xcode will only symbolicate the lines from my app, and when I try to do it by hand I get lots of errors like this:
error: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/otool: file: /Users/sgb/Library/Developer/Xcode/iOS DeviceSupport/8.1.1 (12B435)/Symbols/usr/lib/system/libsystem_kernel.dylib does not contain architecture: armv7
Can't understand the output from otool ( -> /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/otool -arch armv7 -l '/Users/sgb/Library/Developer/Xcode/iOS DeviceSupport/8.1.1 (12B435)/Symbols/usr/lib/system/libsystem_kernel.dylib')
I'm told that Xcode will symbolicate the crash logs if I can find an arm7 device running iOS 8.1.1. I have an arm7 device running vanilla iOS 8.1, and two hours they released iOS 8.1.2, so I can't get 8.1.1 onto it.
So what do I do? I can't ask the user to upgrade and get me more logs. How do I symbolicate the crash logs?

The issue is that Xcode 6 does not seem to have shipped with armv7 libraries for iOS 8. Compare these two dwarfdumps:
dwarfdump --uuid /Users/xxx/Library/Developer/Xcode/iOS\ DeviceSupport/8.1.1\ \(12B435\)/Symbols/usr/lib/system/libsystem_c.dylib
UUID: 415DBD55-796D-3413-819F-59EE8ACEBDA2 (armv7s) /Users/xxx/Library/Developer/Xcode/iOS DeviceSupport/8.1.1 (12B435)/Symbols/usr/lib/system/libsystem_c.dylib
dwarfdump --uuid /Users/xxx/Library/Developer/Xcode/iOS\ DeviceSupport/7.1.2\ \(11D257\)/Symbols/usr/lib/system/libsystem_c.dylib
UUID: 17AEC0BF-EB49-3308-9292-4005DC41C50E (arm64) /Users/xxx/Library/Developer/Xcode/iOS DeviceSupport/7.1.2 (11D257)/Symbols/usr/lib/system/libsystem_c.dylib
UUID: 5DA46A1B-0620-36F6-9C19-32E4EC6695FB (armv7s) /Users/xxx/Library/Developer/Xcode/iOS DeviceSupport/7.1.2 (11D257)/Symbols/usr/lib/system/libsystem_c.dylib
UUID: 371F0E18-54F0-3B05-BA14-3619E4EAC99F (armv7) /Users/xxx/Library/Developer/Xcode/iOS DeviceSupport/7.1.2 (11D257)/Symbols/usr/lib/system/libsystem_c.dylib
I tried for 8.0 as well, and got similar output as I did with 8.1.1. This leads me to believe that Apple just said "screw it" for armv7 devices for iOS 8 onward.
I poked around and it doesn't look like you can download any such libraries anywhere :(
Please correct me if you find out otherwise.

Related

gdata-objectivec Architecture armv7 error in video sharing on youtube from iphone sdk

i am using gdata-objectivec library for video sharing on Youtube from my app, i am using xcode 4.6 and iOS 6.0 to do this but the compiled static library "libGDataTouchStaticLib.a" does not support for the architecture armv7 and armv7s.
can anyone help me to compile the libGDataTouchStaticLib.a for armv7 architecture ?
i have also posted this on google group.
i have also seen this sample code and it successfully uploaded the video from iPhone simulator but giving error on device.
i have also tried to install it on device using xcode 4.3 but not got any success.
i have also changed some flags in target>build like header search path, other C linker flag etc and also followed this tutorial
i have also downloaded gdata-objectivec library from svn server using terminal window but i dont know how to compile libGDataTouchStaticLib.a using the command from terminal of mac os for armv7 architecture (xcode 4.5 or 4.6).
if anyone used gdata-objectivec library for video uploading on Youtube from latest xcode or successfully compiled libGDataTouchStaticLib.a for latest xcode then please help me?
Make sure to add below three items in your other linker flags in project's build settings:
-ObjC,-lxml2,-all_load. It worked for me.
Just remove the arv7s from the valid architectures under build settings and compile it would work for you.

App crashes on some devices after update

Im experiencing something strange while updating my app in the Appstore. Version 1.4 worked fine for every device. However Version 2.0 crashes on some devices when updated. The loading screen wouldnt even show when starting up and the app would crash within a second. Removing and reinstalling the application from the app store solves this problem. Again this only happens on some devices (iPod, iPhone 4, iPhone 4s, iPad so far).
I manages to get my hands on a crashing device and check the Device logs. Also I think I found something but I cant really understand the error. It says:
Dyld Error Message:
Library not loaded: /System/Library/Frameworks/AdSupport.framework/AdSupport
Referenced from: /var/mobile/Applications/(ID)/AppName.app/AppName
Reason: image not found
Dyld Version: 199.6
I added AdSupport.framework because I implemented Facebook in my App in version 2.0 and the file is in my project in the folder 'Frameworks'.
Does somebody know how to fix this?
Here is the full crash Report if useful.
Incident Identifier: ID
CrashReporter Key: crash key
Hardware Model: iPod4,1
Process: AppName [35491]
Path: /var/mobile/Applications/id/AppName.app/AppName
Identifier: AppName
Version: ??? (???)
Code Type: ARM (Native)
Parent Process: launchd [1]
Date/Time: 2013-03-05 23:23:35.041 +0100
OS Version: iPhone OS 5.1.1 (9B206)
Report Version: 104
Exception Type: EXC_BREAKPOINT (SIGTRAP)
Exception Codes: 0x00000001, 0xe7ffdefe
Crashed Thread: 0
Dyld Error Message:
Library not loaded: /System/Library/Frameworks/AdSupport.framework/AdSupport
Referenced from: /var/mobile/Applications/(id)/AppName.app/AppName
Reason: image not found
Dyld Version: 199.6
Binary Images:
0x7a000 - 0x106fff +AppName armv7 <0c108dce50ee3e65970e2538a3e319f8> /var/mobile/Applications/(id)/AppName.app/AppName
0x2fe79000 - 0x2fe9afff dyld armv7 <77eddfd654df393ba9c95ff01715fd08> /usr/lib/dyld
0x3075a000 - 0x307d9fff libsqlite3.dylib armv7 <bf01f5ed47b033d8bde30d735ff44416> /usr/lib/libsqlite3.dylib
0x3113c000 - 0x311a0fff MessageUI armv7 <da7af4f9494b35558bf7892dfdb36ee3> /System/Library/Frameworks/MessageUI.framework/MessageUI
This iPod has iOS 5.1 but I also received report on iOS 6.1
Because AdSupport.framework, is ONLY available on iOS 6. So Dyld cannot find something who doesn't exist on past IOS. Even if you are adding framework into your project, you don't actually include the binary, only the reference.
If it's not crashing when you are reinstalling your app, it's because maybe it doesn't use the adSupport functionality at that time. But i'm not sure of this theory because i haven't made your code ;)
Here the apple available framework link, hope it will help you
http://developer.apple.com/library/ios/#documentation/miscellaneous/conceptual/iphoneostechoverview/iPhoneOSFrameworks/iPhoneOSFrameworks.html

PhoneGap Project Armv6

I built a Phonegap 2.0.1 project, and under the build settings for the CordovaLib.ecodeproj it says
Architectures: Standard (armv7, armv7s) - $(ARCHS_STANDARD_32_BIT)
Valid Architectures: 1386 armv7 armv7
However Under the build settings for my projects .xcodeproj I have
Architectures: Standard (armv6, armv7)
Valid Architectures: armv7 armv7
So they seem to contradict each other :S.
The main problem is PhoneGap has dropped support for armv6 however under the current settings the app installs and loads up fine on armv6 devices such as the iphone 3g, but hangs pretty soon in :(.
I tried changing my projects build settings to:
Architectures: Standard (armv7, armv7s) - $(ARCHS_STANDARD_32_BIT)
However this caused xcode to start screaming about some error in the CordovaLib files :S
What should the correct settings be here, I dont want people to install my app on armv6 and have it crash on them :(, how do I ensure only armv7 devices are able to install it
Which version of Xcode are you using? PhoneGap has dropped support for older versions because Apple has - To publish something on the app store you need to support iOS6, which means using the latest version of Xcode and not supporting armv6.
Since $(ARCHS_STANDARD_32_BIT) is the default setting for native iOS projects, not just PhoneGap, I think you can count on the app store system to only deploy to supported devices.

Error in Archiving the app after updating xcode to 4.5

before updating the archiving process work good but after updating when i archiving the app it gives a linker error to TestFlight Library error is:-
ld: file is universal (3 slices) but does not contain a(n) armv7s slice: /Users/dhirajchoudhary/Documents/MyWorldOfExpo/HRWeekIndia/TestFlightSDK1.0/libTestFlight.a for architecture armv7s
clang: error: linker command failed with exit code 1 (use -v to see invocation)
Is any one know how to link the testflight library in Xcode 4.5, iOS 6.0
It's pretty much exactly what the error message says: your app supports multiple architectures, including armv7s. You're trying to link with the TestFlightSDK which doesn't include the armv7s architecture.
You need to either:
Use a newer version of the TestFlight SDK which includes the new armv7s architecture. I'm not sure if this exists yet
Remove the armv7s architecture from your application. It should still work on the iPhone 5 (which is the only device to use armv7s currently) but you would need to test
You need to install Test Flight SDK 1.1, which with support for arm7

clang error is coming on runtime

I am working on app and suddenly prefix.pch file deleted automatically and
this error comes:Command /Volumes/Xcode/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang failed with exit code 1
i havn't found any working answer in google search.
Please help me out
It looks like the problem had to do with the Architecture settings on my sub projects. Xcode 4.2 changes the default Architecture to just armv7 instead of both armv6 and armv7. I had updated my main project to armv6 and armv7, but the sub-projects were still only using armv7. Once I updated all of the sub-projects then it started linking properly.