Error in generating Archives - ios

I m using Xcode 4.2 and i have add AviarySDK 2.4.4 in my project.
Application runs fine in Simulator 5.0 and 4.3. I also test it on device having ios 4.1. So i want to generate .ipa file for my client. But by some reason it can not generate Archives.
It gives following error
"/usr/bin/strip -S /Applications/Projects/AppName/AppName/AviarySDK/Resources/AviarySDKResources.bundle/AviarySDKResources -o /Users/User/Library/Developer/Xcode/DerivedData/WDYWT-avjpbcnwjylobvgevipvsqttnopd/ArchiveIntermediates/WDYWT/InstallationBuildProductsLocation/Applications/WDYWT.app/AviarySDKResources.bundle/AviarySDKResources
/usr/bin/strip: for architecture armv7 object: /Applications/Projects/AppName/AppName/AviarySDK/Resources/AviarySDKResources.bundle/AviarySDKResources malformed object (unknown load command 10)
error: strip /Applications/Projects/AppName/AppName/AviarySDK/Resources/AviarySDKResources.bundle/AviarySDKResources: /usr/bin/strip exited with 1
"
Any help will really great. Many thanks in advance.

Strip errors are generally caused if you have duplicate debugging symbols in your project. Just try the following:
First Method:
Go to build settings of your project
Type Strip in the search Bar.
Under Strip Debug Symbols During Copy, you shall find Debug and under that you shall find Any SDK.
Select NO in Any SDK, select YES in Debug and select YES in Strip Debug Symbols during copy.
A little below you shall find Use Separate Strip. Select YES.
Check that Strip Style should remain All Symbols [If not then change it to that].
Second Method:
Since your error also mentions derived data, their might me duplicacy of your derived data as well. Delete Your project file from the derived data folder.
If you don't know where the derived data folder is, Google it.
I am using aviary in my current project. I have a Mac Mini and a MacAir [for work at home].
I was facing the same strip issues with aviary which I resolved using the first method mentioned above.
It took me a week to figure this out cuz i am a relative newbie in development and nothing regarding this issue has been mentioned in aviary forums as well.
PS:
MacMini: Xcode 4.5
MacAir: Xcode 4.2
Hope this helps

Related

Reference to xml_****_**** is ambiguous

I have updated my Xcode to the latest version of 8.0
After the update, I am facing a new build error preventing me to run the project on the simulator.
The error is the below in DDXMLNode.m:
reference to 'XML_DOCUMENT_NODE' is ambiguous
I am using the XMPP framework as pods (pod 'XMPPFramework') so I still can't figure out a way to solve this.
Note that the project is working normally on the device and was working on both Device and Simulator with the previous Xcode Version.
I have tried to search the internet but I still didn't find any solution for this.
I tried to clean the project and delete everything in the DerivedData folder as well, but it didn't solve the issue.
Appreciate any help.
Actually I am posting this answer in case it may help someone in the future.
After searching a lot without finding any answer, I discovered the following:
There is a file called module.modulemap that contains 2 methods.
module libxml [system] {
header "/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/usr/include/libxml2/libxml/tree.h"
export *
}
module libxmlSimu [system] {
header "/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator.sdk/usr/include/libxml2/libxml/tree.h"
export *
}
The first one is used for real devices, the other one for the simulator.
However, when building the app on the simulator, and for a reason that I didnt figure it out, tree.h is being duplicated and causing all these issue.
So what I made to be able to run the project on the simulator was to comment the first method so the app can build successfully.
NB: Don't forget to uncomment the method once you want to run the project again on the real device.
Hope this will help anyone who will face the same issue.
i have tried some way.
I search the word XML_DOCUMENT_NODE with a result here:
then replace every error with the left symbol. It turns out to be OK for me now.

How movable are iOS debug symbols in Xcode?

I'm using QuincyKit to analyse crash dumps from my iOS apps. QuincyKit's symbolication script is capable of handling both my code and system code - as long as the debug symbols for the relevant version of iOS are present on the machine.
Said symbols reside under (Home)/Library/Developer/Xcode/iOS DeviceSupport. Question - did anyone ever try to move those folders from one machine with Xcode to another?
I could use some 7.0.x symbols; chances of getting a device with that version are practically nil by now.
Just check the source of symbolicatecrash.pl that you use for symbolication.
It searches the iOS system symbols in the following paths:
/System/Library/Developer/Xcode/iOS DeviceSupport/
~/Library/Developer/Xcode/iOS DeviceSupport/
Xcode.app/Contents/Developer/Platforms/*.platform/DeviceSupport/
These paths are hardcoded and may change with every update of the script (as it is part of Xcode).

Sudden Warnings after upgrading to XCode 5.1

I just stumbled upon 2 warnings in my project that are really confusing..
1.
warning: ignoring debug info with an invalid version (0)
2.
WARNING: Linking two modules of different target triples: 'x86_64-apple-ios7.0.0' and 'x86_64-apple-ios6.0.0'
the first one was resolved by this answer's help. But after restarting my Xcode I got the warning again…
The second one just appeared and i can't find anything on google for this…
THanks in advance.
Items:
You should for sure clean your Xcode project (⇧⌘K). Personally, I like to clean the entire derived data directory (⌥⇧⌘K), AKA "nuke the entire site from orbit...".
I had some problems after upgrading too. FWIW, Xcode 5.1 defaults Simulator builds to "active architecture", which for most folks is x86_64 now. Previously, I think the default architecture for sim builds was i386. This might be part of your problem with #2.
Re: #2, one of those modules is compiled against the iOS6 SDK, and one is iOS7. Clean might help, or you might need to reset the Base SDK in Build Settings to Latest iOS on all your submodules.

Building ios corePlot with Xcode 5.0 using a Dependent project scenario

I am new to IOS and am writing an ios 7.0 app that uses coreplot (latest version 1.3). I had the "Build active architecture" set to YES - so during the development, I did not run into any linking problem (I used static linking method as described at https://code.google.com/p/core-plot/wiki/UsingCorePlotInApplications
Then I built and deployed on my device (iphone 4, ios 7). It worked fine - I dont remember if it asked to change build settings or not. Today morning, when I tried to run the same code on simulator it started giving me linker error. After doing some research, I realized I need to set the build for active architecture to No and rebuild the core plot using "dependent project install" strategy.
I am stuck at the point where I need to set the header files search path. The compilation fails to detect the header file. The coreplot is in a directory CorePlot_1.3.
The main linking error reads as
"ignoring file /Users/rmenon/Documents/Developer/MoneyTrail/MoneyTrail/libCorePlot-CocoaTouch.a, missing required architecture x86_64 in file /Users/rmenon/Documents/Developer/MoneyTrail/MoneyTrail/libCorePlot-CocoaTouch.a (3 slices)"
As part of my attempt to solve this, I tried to load the coreplot project separately, change the architecure to Stndard (armv7 nd armv7s) and tried to build it. I get two deprecation errors below. Any help in getting me compile this library for ios 7 so I can use the same setting in debug and device would be really appreciated! Thank you!
You'll need to update to a newer version of Core Plot. It has been updated to work with Xcode 5 and iOS 7, but we haven't done a release with those changes yet. You can pull the latest code with Mercurial or wait for the next release, which should be soon (within the next week or so).

Cannot step into a particular function in a library in Xcode 4.2/iOS 5.0

I am working on an iPhone app in which I need to include a library (lib.a) for the app to work. This library (lib.a) consists of multiple files(classes). While debugging, I noticed that I could not step into any function in the file sync.m (included via lib.a), but I could step into any function in file (data.m) (also included via lib.a). I am wondering as to why I can step into one file and not another. I am using XCode4.2/iOS 5.0
I have checked all the debug settings in both my app and the library.
Generate Debug Symbols => yes (for debug)
I am also in the "run for debug mode".
The only thing that I suspect at this point is that I moved the sync.m from one folder to another ... Would that cause a problem with respect to the debug symbols ??? Where are the debug symbols stored? In the dsym file? Where can I find this file as I would like to see which debug symbols are being generated and which are not.
I would appreciate it if anyone can throw some light on this issue.
The object was not being retained and thus was pointing to nothing(NULL). Obviously, therefore function couldn't be stepped into.

Resources