24

The command line tool to build Xcode projects, xcodebuild, has a new build action available in Xcode 4: archive.

From man xcodebuild:

       archive     Archive a scheme from the build root (SYMROOT).  This requires specifying
                   a workspace and scheme.

Unfortunately, when I try to use it I get an error:

$ xcodebuild archive -workspace SimpleTestApp.xcworkspace -scheme SimpleTestApp
xcodebuild: error: Failed to build workspace SimpleTestApp with scheme SimpleTestApp.
    Reason: The selected run destination is not valid for this action.

My impression is this doesn't actually work yet. Has anyone got it to work? If so, how?

Steven Fisher
  • 44,462
  • 20
  • 138
  • 192

3 Answers3

11

For information I'm 99% sure that xcodebuild archive was working in a previous Xcode 4 version, maybe a Beta... And this is really frustrating since -verbose and syslogs doesn't bring much details.

So I would call that... a Bug!

If automating your build is what you are looking for, there is a way to generate IPA archive from command line using xcrun PackageApplication

With xcrun to package and xcodebuild to build, you can almost achieve what xcodebuild archive is supposed to do. I would prefer to use xcodebuild since we can expect this to generate a .xcarchive (.app + .dSYM), more interesting than an IPA.

Not so off-topic, but if anyone knows how to get more logs from xcodebuild and Xcode, I'm really interested!

EDIT: After looking in Apple Forums, I confirm this is an Xcode BUG introduced with GM2... I guess Apple Xcode engineers are working on Xcode 4.1 that I think final version will be released with OSX Lion... In june maybe? With a fix? :(

Community
  • 1
  • 1
Vincent Guerci
  • 14,379
  • 4
  • 50
  • 56
  • That's my forum thread. :) It seems like what I want isn't possible at this point. – Steven Fisher May 18 '11 at 18:28
  • Haha, I should have checked names! That is bogging me too, I love archives concept, and the simplification it brings for AppStore submission, but would love too to automate this in the beta stage! >_ – Vincent Guerci May 18 '11 at 18:41
  • 1
    It seems to be broken again in 4.3.2: `unsupported build action 'archive'` :( – keegan3d Jun 11 '12 at 21:53
  • I've abandoned the idea of using this a long time ago... and use Xcode IDE to do this... man `xcodebuild` still mention `archive` as a valid `buildaction`... sounds like a bug... again. – Vincent Guerci Jun 13 '12 at 17:22
8

This seems to work for me:

xcodebuild -project TestApp.xcodeproj  -scheme TestApp -configuration "Ad Hoc" archive
Daniel X Moore
  • 14,637
  • 17
  • 80
  • 92
0

Is this working from the GUI ? Project -> Build for Archive Then you can find the archive back in Organizer (archive Tab) It is working for me in the GUI

Sébastien Stormacq
  • 14,301
  • 5
  • 41
  • 64
  • Yeah, it works fine in the GUI. xcodebuild is the name of the command line component to do it. I'm clarifying this a bit in the question, thanks. – Steven Fisher May 06 '11 at 21:56