Unable to use xcodebuild on Mavericks with Command

2019-01-16 07:28发布

问题:

I have installed the Command Line Tools:

$ xcode-select --print-path
/Library/Developer/CommandLineTools

However, when anything tries to use xcodebuild, I get the following error:

$ /usr/bin/xcodebuild
xcode-select: error: tool 'xcodebuild' requires Xcode, but active developer directory '/Library/Developer/CommandLineTools' is a command line tools instance

On Mountain Lion it was possible to use this without installing the whole of Xcode, rather just the Command Line Tools. Is it possible to do this on Mavericks? How can I get it working?

N.B. This is on a clean install of Mavericks.

Update: just to show, I do have the Command Line Tools installed:

$ gcc --version
Configured with: --prefix=/Library/Developer/CommandLineTools/usr --with-gxx-include-dir=/usr/include/c++/4.2.1
Apple LLVM version 5.0 (clang-500.2.79) (based on LLVM 3.3svn)
Target: x86_64-apple-darwin13.0.0
Thread model: posix

回答1:

I know that this is a late answer, but in my case this command solved the issue:

sudo xcode-select --switch /Applications/Xcode.app/Contents/Developer


回答2:

It appears that OSX has changed xcodebuild to require XCode to be installed, where before it functioned properly with only the OSX Command Line Tools installed.

Old semi-related answer

Many people ran into this with Node. Node's build tool, gyp, uses xcodebuild to prepare for compiling node packages. Mavericks has changed the behavior of xcodebuild so that it no longer works properly with gyp. This is being fixed at the moment. See the node-gyp issue

Once the changes have been deployed to NPM, you will be able to install the new node-gyp package and compile properly. You will also need to update your NPM version once the changes are incorporated into NPM.



回答3:

Please first go to finder, next select Applications from left panel, next look for Xcode, and check if its name is Xcode or Xcode-Beta

If name is Xcode-Beta then enter this command in Terminal:

sudo xcode-select -switch /Applications/Xcode-Beta.app/Contents/Developer

If name is Xcode then enter this command:

sudo xcode-select -switch /Applications/Xcode.app/Contents/Developer

Hope this answer might help for users with Beta version of Xcode

Thanks



回答4:

This issue was due to xcode-select developer directory pointing to /Library/Developer, which only contained the folder CommandLineTools. To this end, the error message is complaining about not the directory not being the same as Xcode.

Two tested solutions:

  1. (Re) Install Xcode.

  2. Point xcode-select to the Xcode Developer Directory using the following command:

    sudo xcode-select -switch /Applications/Xcode.app/Contents/Developer
    

References:

How to fix error like “xcode-select: error: tool ‘xcodebuild’ requires Xcode, but active developer directory

xcode-select active developer directory error



回答5:

I reinstalled Xcode from App Store which solved this issue. I guess my previous installation is not complete install



回答6:

If you use XCode2: sudo xcode-select --switch /Applications/Xcode\ 2.app/Contents/Developer

Pay attention to the "\" to escape the space.



回答7:

Today I had this issue and the problem was I was using a manual install of xcode and had the file named Xcode8.3.2.app instead of Xcode.app. Renaming the app fixed the issue of xcode-select complaining. This seems to indicate the regular appname is on its search path but variants are not.



回答8:

AFAIK, command line tools in Mavericks are installed into /Applications/Xcode.app/Contents/Developer which tends to imply that Xcode is required. Undocumented feature probably.