I finally realised why the 'Archive' option was gray. I needed to select an iOS device.
The only device that I currently have with me has iOS6 installed on it.
It says the following when trying to Archive the app:
ld: warning: ignoring file
/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS6.0.sdk/usr/lib/crt1.3.1.o,
file was built for armv7 which is not the architecture being linked
(armv6):
/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS6.0.sdk/usr/lib/crt1.3.1.o
ld: entry point (start) undefined. Usually in crt1.o for architecture
armv6 clang: error: linker command failed with exit code 1 (use -v to
see invocation)
But I want to support armv6. What should I do?
EDIT: I tried changing the target from iOS4.0 to iOS 4.2 and said the following:
/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/lipo:
/Users/airrider3/Library/Developer/Xcode/DerivedData/TRGame-fvkoniflczyexwhcnmjvozqbuozd/Build/Intermediates/ArchiveIntermediates/AppStore/IntermediateBuildFilesPath/TRGame.build/Release-iphoneos/iOSGame.build/Objects-normal/armv7/Kipos
and
/Users/airrider3/Library/Developer/Xcode/DerivedData/TRGame-fvkoniflczyexwhcnmjvozqbuozd/Build/Intermediates/ArchiveIntermediates/AppStore/IntermediateBuildFilesPath/TRGame.build/Release-iphoneos/iOSGame.build/Objects-normal/armv7/Kipos
have the same architectures (armv7) and can't be in the same fat
output file Command
/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/lipo
failed with exit code 1
EDIT: I now managed to archive with just armv7 to iOS 4.0. Is it going to work?
You can't archive an file with IOS6, you need to downgrade to the latest official version to archive.
Edit:
Devices updated to iOS 6 beta can not be restored to earlier versions
of iOS. Registered development devices will be able to upgrade to
future beta releases and the final iOS 6 software.
https://developer.apple.com/devcenter/ios/index.action#
I figured it out. Instead of adding the 'armv6 armv7', I just needed to add 'armv6', as the code for 'armv7' was already written with that other default bizarre code.
That's why it was telling that two armv7 was being built.
Thanks everyone for the help, either way!
Related
I have a Unity project which I have successfully built for Android without issue. When trying to build for iOS I am encountering an issue once the project is in Xcode.
Unity compiles without any errors and creates an Xcode project.
Upon opening the Xcode project I have NO simulators available. I can get these simulators by selecting ios in the Supported Platforms section, at which point simulators become available - originally Supported Platforms is set to iphoneos. This seems extremely odd behaviour to me, and suggests something larger going wrong.
After getting a simulator to select I get the following error when trying to compile/run/build:
ld: symbol(s) not found for architecture i386
clang: error: linker command failed with exit code 1 (use -v to see invocation)
The full error is available on Pastebin (too large to post directly on here):
https://pastebin.com/3fYR8fE3
I'm really at a loss on what I can do. I have tried a number of things, including:
Building from Unity as Debug and Release
Building from Unity with 'Symlink Unity Libraries' on and off
Building from Unity with .Net 3.5 and .Net 4.* flavours
Manually adding the libiconv.2.dylib file in the linked frameworks tab as the .tbd equivalent
Setting the target minimum version of iOS to 9.0 (negates the need for libiconv.2.dylib entirely)
I am using latest versions of everything:
Unity 2018.2.17f1
Xcode 10.1
It seems like you have the library il2cpp built for another architecture, have you tried to change your target's "Build Settings > Build Active Architectures Only" to "No"?
However I made some researches and it seems that Unity for iPhone doesn't deploy on simulator. It only works on device or in the Unity editor. Check this link out
I have Unity3D project and I built it for iOS. If I run it using XCode's simulator it works fine. But if I want to compile it for "iOS Device" or for a physical device connected to my Mac, I get lots of errors and as a result I can't create an Archive.
For a testing purpose, I even created an empty Unity3D project, built it for iOS and still get the same errors, although this project does absolutely nothing.
The errors are the following:
ld: library not found for -liPhone-lib
clang: error: linker command failed with exit code 1 (use -v to see invocation)
And these are the settings I use:
Architectures: armv7, armv7s, arm64 (also tried removing arm64 without any positive result)
Base SDK: iOS 7.1
Build active: no
Supported platform: iOS
Valid arch: armv7, armv7s, arm64
I use XCode 5.1.1 and Unity 4.5.1 (previously even tried 4.3.2)
How can I build the project and create the Archive?
I've run into the same issue some time ago and it was fixed by replacing quotes under library search path:
replace
"$(SRCROOT)/Libraries"
with
$(SRCROOT)/Libraries
more: http://answers.unity3d.com/questions/538363/error-when-i-updated-to-xcode-5-to-get-import-to-i.html
I recently updated my OSX to El Capitan and, because of an issue with my previous version of Unity (v 5.0.1 I believe), I was forced to update to the latest version (5.2.1f1). Now, when I build for iOS, I get the following error during the linking process:
ld: framework not found FBSDKCoreKit for architecture armv7
clang: error: linker command failed with exit code 1 (use -v to see invocation)
I am using the Soomla library for in-app purchases and social integration, as well as Parse for the online database. I believe at least one of these libraries could be responsible for this, since they both contain Facebook-related code. In any case, I can't figure out what I need to try next. Both plugins have been updated to their latest versions.
I attempted building with the Mono2x scripting backend first, as usual. Then, I tried changing it to IL2CPP and tried compiling for armv7, arm64, and the Universal architecture options. Nothing worked.
I also tried manually adding the FBSDKCoreKit framework file downloaded from https://developers.facebook.com/docs/ios. This also didn't work, except this time I got a slightly different error:
ld: framework not found FBSDKCoreKit clang: error: linker command
failed with exit code 1 (use -v to see invocation)
I'm not sure why it would say this when I explicitly add the framework into the Xcode project. Could anyone give me any insight?
i'm using assimp.a and freeimage.a with voufria ar base on
https://github.com/DrNeuroSurg/REVu/tree/master/REVU_IOS
I'm trying to build an app I've been working on for 64-bit iOS and it's failing at the linker. The error is this:
ld: 128-bit LDR/STR not 16-byte aligned: from __ZN13CResizeEngine16horizontalFilterEP8FIBITMAPjjjjPK10tagRGBQUADS1_j (0x1006FFF20) to l005#0x00000850 (0x100B825D8) in '__ZN13CResizeEngine16horizontalFilterEP8FIBITMAPjjjjPK10tagRGBQUADS1_j' from /Users/xxxxx/Desktop/sharq_final/El-shareq/AR/QCAR/REVU_IOS/FreeImage/lib/ios/freeimage.a(Resize.o-arm64) for architecture arm64
clang: error: linker command failed with exit code 1 (use -v to see invocation)
Anybody run across something like this while porting to 64-bit (or ever)?
I believe this is due to a clash of clangs. FreeImage.a was built with the latest clang from Xcode 6.3.1.
Make sure you have the latest Xcode Installed.
Do a clean, restart your Mac and try again.
The only reference I could find similar to this issue was at this link, and it was solved with these steps:
http://www.politepix.com/forums/topic/linked-errors-with-openears-iphone-5s/
I have posted an issue on the openFrameworks github as well with some more information:
https://github.com/openframeworks/openFrameworks/issues/3984
I'm using xcode 4.5 My Base SDK is 6.0 and my deployment target is 5.1. When I try to build for release or profiling I get this little gem of an error.
ld: file is universal (4 slices) but does not contain a(n) armv7s slice: /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS5.1.sdk/usr/lib/crt1.3.1.o for architecture armv7s
clang: error: linker command failed with exit code 1 (use -v to see invocation)
Now....
I have seen this message posted on stackoverflow but Im still none the wiser.
What exactly is this crt1.2.1.o thats causing all the fuss?
Can I modify it somehow to kill my error?
And finally it has been suggested that I simply set build for active architectures only. What are the implications of doing this?
Thanks
The crt1.3.1.o file contains the startup code for the C runtime library. This initializes the runtime, calls global initializers and finally calls the main function.
Something must be amiss with your project settings. You are compiling for armv7s as well, but the libraries are being linked from the iOS 5.1 SDK which doesn't support the armv7s architecture yet.
I had this same issue, I removed armv7s from valid architectures in build settings and left only armv7, after that I could archive my project