1
votes

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?

2
I imagine you can't archive an iOS 6 app yet as it's not been released, same for when people try to submit apps using a preview build of Xcode.Luke
Check the edit. Thanks for the attention.David Da Silva Contín

2 Answers

2
votes

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#

1
votes

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!