DYLD issue - "reason: image not found" - iphone

Weirdest SOB ever…
When i run my app on my iPhone it works perfectly. Also on lots of other iPhones. But when I try to run it on my friends iPhone (5.1.1), it starts and gets stuck immediately with the following error:
reason: image not found
Also it says it couldn't load Adsupport library. Could it be that 5.1.1 doesn't support Adsupport framework? Really?

Just solved it, although i would really like an answer. I deleted the Adsupport framework and now it works.
I don't know what image he was talking about… Really weird.
What framework does 5.1.1 use for such things?

Related

How to solve the errror "image not found"?

I am working on universal project(iPhone/iPad), in which the code that I used is same on iphone and ipad. The code is working well in iphone and not working in iPad.
It returns the following error.
dyld: Library not loaded: /System/Library/Frameworks/AssetsLibrary.framework/AssetsLibrary
Referenced from: /Users/mac/Library/Application Support/iPhone Simulator/3.2/Applications/AFE91FFD-27A4-41A9-B5AF-C4336F10A9F3/Move On Inspirational Quotes.app/Move On Inspirational Quotes
Reason: image not found
Can anyone please tell me how to solve this error.
As the AssetsLibrary framework is present only on iOS 4.0 and later, trying to run an application that uses it on earlier (i. e. 3.XX) iOSes will result in a crash. Either try eliminating the use of this framework from your application, or move on and support iOS 4.0 and later only.

Problems getting TestFlight to work with Monotouch app

Am struggling to get TestFlight working with my MonoTouch app (Monotouch 5, IOS5) and have not found any MonoTouch documentation for TestFlight.
Here is what I tried so far.
Downloaded TestFlight bindings from https://github.com/mono/monotouch-bindings/tree/master/TestFlight -- after adding this as a reference it seemed that the TestFlight methods were actually not exposed at all, so I looked for another set of bindings.
Downloaded ayoung's TestFlight bindings from https://github.com/ayoung/monotouch-testflight. Built monotouch-testflight.dll with Make, copied it to the project and added to References -- this time the TestFlight methods were all visible.
Added libTestFlight.a to the Lib folder in my MonoTouch project with BuildAction set to Nothing. (I also have RedLaser in there).
Per ayoung, I enabled LLVM compiler (with ARMv7); ayoung states it is required. In Project Options -> iPhone Build my additional mtouch arguments are:
-cxx -nosymbolstrip -nostrip -gcc_flags "-lgcc_eh -framework SystemConfiguration -framework CFNetwork -framework CoreVideo -framework CoreMedia -framework AVFoundation -framework OpenGLES -framework Security -L${ProjectDir}/Lib -ltestflight -RedLaserSDK -ObjC"
Note: The app worked ok with RedLaser before TestFlight was added to the project.
Here -lgcc_eh is as per ayoung -- I have not been able to find out what it is or what it is for. Perhaps I should have a gcc_eh.dll (?) but I don't AFAIK, and I don't know where I could find such a thing.
In Main.cs I added
using TestFlightSdk;
and In FinishedLaunching I added
TestFlight.TakeOff( "(downloaded team token is here)" );
Compiled and installed with no error (Release|iPhone).
When I now run the app on the device, it exits immediately with no diagnostic that I can discover.
The app also exits immediately if compiled to Debug|iPhone. In this case, however, if I turn off LLVM despite ayoung's strictures then in Application Output I see the following:
TestFlight: Started Session
TestFlight: Crash Handlers are installed
Thread started:
Thread started:
TestFlight: Team Token is recognized
TestFlight: End of Session
TestFlight: Communication with TestFlight is currently disabled, check earlier in your log for details
This might be because I have not yet uploaded the app's .ipa file to TestFlight?? (The app does launch in this case however.)
I am trying to find out how to generate a .ipa file. TestFlight documentation shows how to do this from XCode but my app is code-only with no .xib so that option seems to be out? TestFlight documentation also shows how to generate a .ipa from the .app file. Here my problem is, how do I lay my hands on the .app file for a device build?
Any help with these issues would be so much appreciated.
-lgcc_eh is needed to include the Exception Handling GCC library, which is often required if you link with C++ libraries.
You also have a lot of -framework options that do not look required (MonoTouch already adds them) - but that won't be the cause of your problem. If you're curious about what mtouch use/provide at compilation time then you can add "-v -v -v" to the "additional touch arguments" in your project options (and look at the build output).
As for the main issue I think it's related to the fact the TestFlight handlers are not compatible (presently) with MonoTouch (5.0). MonoTouch exception handling already provides it's own crash handlers (e.g. for NullReferenceException) and adding other handlers needs to be done with care (how and when to do it is very important). This is likely why the current bindings in monotouch-bindings don't include every feature available in testflight.
I suggest you to open a bug report at bugzilla.xamarin.com and you'll get email updates on the progress (and know exactly when the feature will become available).
p.s. try to break your issues into several (stack overflow) questions, you're more likely to receive answers that way since not everyone knows all the answers to every question you might have :-)
I was going down the wrong track entirely. Finally found the MonoTouch documentation which describes the built-in support for TestFlight:
http://docs.xamarin.com/ios/tutorials/TestFlight_Support
Will try this, it should solve the problem.
Distributing throug testflightapp is a different thing than using the testflightsdk in you app.
The first one is by clicking the upload to testflight button in the menu.
The second is by including the actual sdk.
In the last few day they (xamarin) released new testflight sdk bindings. That don't recuire you to modify the mtouch parameters. So it should be much easier to include it.
Personally i really like the testflight sdk... Helps me better (let) test my apps.
From the sound of this Xamarin bug report, it seems as though even if you get the TestFlight SDK native library working with MonoTouch bindings or by linking it yourself, you're still going to have the problem that TestFlight is not going to properly handle any NullReference exceptions and is simply going to crash the app when it encounters one. This makes the whole point of the TestFlight SDK kind of pointless until either a) MonoTouch is re-tooled to deal with it or b) TestFlight releases a managed Mono library.
Don't get me wrong, I REALLY want to be able to use the TestFlight SDK with MonoTouch. I've been beating my head against the wall trying to get it work all day. Something is failing when I call the TestFlight.TakeOff("MyKey") method. Control does return from the method, but then it crashes shortly thereafter...about 1 second after it's called. Weird.
If anyone else has gotten it work, I'd love to hear about your experiences. Thanks.

Error ITunesSoftwareService.framework missing

I'm running into problems archiving an app using Xcode 4.2 iOS5 b6 under an EnterpiseDistributionProfile.
The Error is:
The bundle “ITunesSoftwareService” couldn’t be loaded because it is damaged or missing necessary resources
Could not find out anything about this, didn't use it on purpose. What is is? Is this a problem with the beta?
I can publish the app via iTunes by the way and it seems to work, just a little trouble with a pickerView after coming back from camera use. But I don't think it is related to this missing framework.

dyld: Library not loaded: /System/Library/Frameworks/UIKit.framework/UIKit

Please bear with me, newbie just learning the ropes.
I am getting the below message, when I try and run my app, it quiets, but then does let me re-open fine after the first quit.
I tried a few things and if I turn on if i 'activate breakpoints' it all works fine...
Tried a few suggestions, 'deleting build folder', 'restarting xCode' nothing seems to work...
dyld: Library not loaded:
/System/Library/Frameworks/UIKit.framework/UIKit
Referenced from:
/Volumes/MyBook/Apps/CToolBox/build/Debug-iphonesimulator/CToolBox.app/CToolBox Reason: image not found
The Debugger has exited due to signal
5 (SIGTRAP).The Debugger has exited
due to signal 5 (SIGTRAP).
Thanks in advance.
Try this
Just delete your personal settings files for the project.Right click on .xcodeproj file and select show package contents .They will be username.mode1v3 and username.pbxuser. I didn’t figure out which file was the cause, but deleting them sorted it out.
One other way I found today is, turning the Framework (in this case UIKit) in question as "optional". I hope you know how to do that :)
PS. I still wanna know the real reason of this abnormal linking failure? my code was working perfectly till today!
It looks like its trying to find the UIKit Framework in the wrong location. It shouldn't be looking in system frameworks but in a path like this:
/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator3.1.3.sdk/System/Library/Frameworks/UIKit.framework
Get info on the UIKit framework within Xcode and see where it thinks the path to is at. If you installed in a non-standard location that might be your problem. You could also remove and readd the framework to try and change its path.
You should also check the configuration popup to make sure you're not trying to build for Cocoa.
You can also get this sort of error message trying to write a Mac OS app if you try to use a framework that's not available on your OS version, e.g. trying to write a MacOS SpriteKit app in Mountain Lion.

What does that mean? "mi_cmd_stack_list_frames: Not enough frames in stack."

Debugger is telling me this, when I run my app on device:
Program received signal: “EXC_BAD_ACCESS”.
mi_cmd_stack_list_frames: Not enough frames in stack.
mi_cmd_stack_list_frames: Not enough frames in stack.
I don't get information about where in code that happens. That's all I get. Any idea what that could mean?
The app crashes after that. When the device is not connected to the mac, it still crashes, so not a debugger problem.
Building on the 4.0 sdk onto a 3.1.3 phone caused this for me.
Fixed by weak linking UIKit in the target.
EXC_BAD_ACCESS happens when a message is sent to an object that has already been released.
I've seen "mi_cmd_stack_list_frames: Not enough frames in stack" before when trying to release something that's already been released as well.
My suggestion is to set the NSZombieEnabled environment variable and see which released object you are trying to access.
This site has a great tutorial on it:
http://www.codza.com/how-to-debug-exc_bad_access-on-iphone
I've seen this caused by at least three different kinds of problems:
• As described in the other answer, overrelease errors can do it.
• I had it happen when I was upgrading an app to use iAd and IOS 4.0. I think the problem was that I tried to use the iAd framework in the 3.0 version of the app as well, which of course isn't possible because iAd is only around in 4.0 and above.
• I had it happen when I removed a bunch of stuff from an app and recompiled, but vestiges of the old stuff were still around on the simulator. Resetting the simulator cleared the problem. What I was removing was the Flurry API. I'm afraid I don't know what, specifically, in there stuck around and caused the problem.
I have the same issue. My solution is:Quit the Xcode and then restart it after waiting some time.
I've got such a message when was trying to launch an app on iPhone under iOS 3.1.2 with a string like that
Class messageClass = (NSClassFromString(#"MFMessageComposeViewController"));
At the same time that works well when I use a device with iOS 4.
So I can assume that app could crash when start running on device if there are any references to iOS4-only classes.
Creating a new project and copying all the existing files in it solved this problem for me.