Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Xcode 4 + iOS 4.3: "No Packager exists for the type of archive"

I just upgraded to Xcode 4 and am trying to create an adhoc build of an earlier project. Whenever I use the "Archive" option I either end up with no archive at all in the Organizer window OR there is an archive, but there is no option to package it as an .ipa, because "No Packager exists for the type of archive".

Has anyone gotten adhoc builds working under Xcode 4 for project that have been migrated from Xcode 3.2?

like image 598
Elver Loho Avatar asked Mar 11 '11 10:03

Elver Loho


People also ask

What's new in Xcode 4?

New Features in Xcode 4 Xcode 4.1adds features to support OS X v10.7 Lion as well as other enhancements to the application. Xcode 4.2adds features to support iOS 5 as well as other enhancements to the application. Xcode 4.3adds features to support iOS 5.0 and OS X v10.7, as well as other enhancements to the toolset.

What version of Xcode does iOS 5 support?

Xcode 4.2adds features to support iOS 5 as well as other enhancements to the application. Xcode 4.3adds features to support iOS 5.0 and OS X v10.7, as well as other enhancements to the toolset. Xcode 4.3.1 and 4.3.2adds support for the updated iOS SDK 5.1.

How do I install Xcode on a Mac?

This version of Xcode is distributed as a single application bundle, Xcode.app, installed through the Mac App Store directly to the Applications folder. Installing Xcode 4.3 no longer requires the Install Xcode application. These changes make it easier for you to install and update Xcode using the standard Mac App Store mechanism.

Does Xcode support Objective-C and C++11?

Important: The LLVM GCC compiler does not include the latest Objective-C and C++11 features. Xcode 4.6 is the last major Xcode release which includes the LLVM GCC compiler and the GDB debugger.


3 Answers

you may have some linked projects (like librairies) inside your main project. Go to the Build settings of those projects and set the setting "Skip install" (Deployement category) to "Yes", but leave the "Skip install" of the main project to "No". Build, archive, and you should be able to select the ipa package.

like image 69
Lionel Vergé Avatar answered Sep 19 '22 21:09

Lionel Vergé


Thanks but I needed 3 steps to entierly solve the problem with my project framework:

  1. set the Target Build Settings/"Skip Installation" property to "YES" for every dependency project

  2. clear the Target Build Settings "Installation Directory" property for every projects

  3. for every projects, move every headers from section "Build Phases/Build Settings/Copy Headers" Public/Private to Project

like image 24
PixelEdn Avatar answered Sep 23 '22 21:09

PixelEdn


I found that a combination of these answers solved the problem. I spent a lot of time verifying whether Skip Install was set to Yes on all linked projects and it turned out that was only part of the issue for me. If you're experiencing this issue with Archive, here are the steps to take:

  1. Find the archive in the Organizer, right-click and select Show in Finder.
  2. Right-click the .xcarchive file in Finder and select Show Package Contents.
  3. Find the Products folder and see what's in it. There should only be an Applications folder in the Products folder, and the Applications folder should contain only one iPhone app (YourProject.app).

If, in step 3, you find a static library (<some-library>.a) either directly under Products or in a subfolder, go to Xcode and select the project that produced the static library (you should be able to tell which project it is based on the name of the static library). Go to the Build Settings and select the target, then set "Skip Install" to "Yes".

If, in step 3, you find header files (<some-header>.h) either directly under Products or in a subfolder, go to Xcode and select the project that contains those headers. You should be able to find the project based on the prefix used in the header file names. In that project, go to the Build Phases, and in the Copy Headers section, move all headers from the Public and Private sections to the Project section.

Thanks to this answer and this answer and this answer for helping me to resolve this.

like image 26
Josh Brown Avatar answered Sep 22 '22 21:09

Josh Brown