58
votes

I have installed both Xcode 3.2 and Xcode 4.0.2 on the same machine, which uses Hudson for automated CI (continuous integration) builds. When I say that both were installed, what I mean by that is that I can use both Xcode 3 and Xcode 4 simultaneously or interchangeably. They both exist on the machine, as I did a custom install for Xcode 4 without overwriting Xcode 3 (supposedly).

  • Do command line calls to 'xcodebuild' invoke Xcode 3 or Xcode 4?
    • Does that question even make sense? Someone who may or may not be knowledgable on the topic is requesting that some projects be built with 3 and some with 4.
  • If so, how do I force it to use 3 or 4?
    • alternatively, is there a separate location where Xcode 3's 'xcodebuild' is stored vs. where Xcode4's 'xcodebuild' is stored? If there is, I can just use a different path in my build script.
3
found it! by default, xcodebuild is stored in Developer/usr/bin. I have Xcode4 stored separately in a folder called Xcode4 so the xcodebuild path for xcodebuild is Xcode4/usr/bin/xcodebuild. This means I will replace 'xcodebuild' in my build script with 'Xcode4/usr/bin/xcodebuild'. I'll let you know if it DOESN'T work. - kraftydevil
What about using 'which -a xcodebuild' to find all the locations in your path where xcodebuild exists. For example in my case this returns '/usr/bin/xcodebuild'. Since this is on the path, issuing 'xcodebuild -version' returns that I have Xcode 4.5. - Ioannis Filippidis

3 Answers

132
votes

You can find out what version is xcodebuild using with xcode-select -print-path. Also, change to a different version using xcode-select -switch <path>

42
votes

Also, to determine which XCode environment is being used, use the command xcodebuild -version.

25
votes

Outside the terminal, you can view and change this in Xcode.

Open Preferences, then select the Locations tab. Near the bottom, an entry titled Command Line Tools labels a dropdown, whose selection corresponds to the version of Xcode used in xcodebuild.

You may open this dropdown to select another version of Xcode that you have installed in your /Applications or ~/Applications folder.

Screenshot illustrating the above-described solution.


Interestingly, this panel used to say what this pop-up menu does and that it's analogous to xcode-select.