安装了命令行工具的Mavericks无法使用xcodebuild


92

我已经安装了命令行工具:

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

但是,当尝试使用时xcodebuild,出现以下错误:

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

在Mountain Lion上,无需安装整个Xcode,而仅安装命令行工具,就可以使用它。小牛有可能这样做吗?我该如何运作?

注意:这是在全新安装的Mavericks上的。

更新:只是为了显示,我确实安装了命令行工具:

$ 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
在尝试构建一些节点模块时遇到了同样的问题。希望有一个快速的解决方法。
rossipedia 2013年

我创建了一个问题,node-gyp因为这就是问题的根源:github.com/TooTallNate/node-gyp/issues/341

也许您必须安装Xcode。那就是我的gcc --version看起来像如何配置:--prefix = / Applications / Xcode.app / Contents / Developer / usr --with-gxx-include-dir = / Applications / Xcode.app / Contents / Developer / Platforms /MacOSX.platform/Developer/SDKs/MacOSX10.9.sdk/usr/include/c++/4.2.1 Apple LLVM版本5.0(clang-500.2.79)(基于LLVM 3.3svn)目标:x86_64-apple-darwin13。 0.0线程模型:posix
Martin Christmann

1
也许您是对的,很奇怪,在安装了命令行工具的Mountain Lion上没有必要。

我想你做到了xcode-select --install。安装了Xcode的xcode-select --print-path照片/Applications/Xcode.app/Contents/Developer
mb21,2013年

Answers:


63

我知道这是一个较晚的答案,但就我而言,此命令解决了该问题:

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

14
请注意,问题在于使用命令行工具安装进行构建。通过切换到Xcode.app,您可以通过Xcode进行构建(该问题试图避免安装)。
bryanmac 2014年

23

似乎OSX已更改xcodebuild为需要XCode安装,在此之前只能安装OSX命令行工具才能正常运行。

旧的半相关答案

许多人遇到了Node。节点的构建工具,gyp,使用xcodebuild用于编译节点包准备。小牛改变了的行为xcodebuild,使其无法再与一起正常使用gyp。目前正在解决此问题。请参阅node-gyp问题

将更改部署到NPM后,您将能够安装新node-gyp软件包并正确编译。将更改合并到NPM后,您还需要更新NPM版本。


不知道为什么将它与节点链接,我正在尝试使用Xcode构建其他内容
2014年

确切地说,当您从命令行调用xcodebuild时,仍然会触发错误...实际上,我实际上是从Apple开发人员网站developer.apple.com/downloads/index.action#
alexserver

16

请首先转到查找器,然后从左侧面板中选择“应用程序”,然后查找Xcode,并检查其名称是Xcode还是Xcode-Beta

如果名称为Xcode-Beta,则在终端中输入以下命令:

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

如果名称是Xcode,则输入以下命令:

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

希望此答案对使用Xcode Beta版的用户有所帮助

谢谢


9

此问题是由于指向xcode-select 开发人员目录而导致的/Library/Developer,该目录仅包含文件夹CommandLineTools。为此,错误消息抱怨不是目录与Xcode不同。

两种经过测试的解决方案:

  1. (重新)安装Xcode。

  2. 使用以下命令将xcode-select指向Xcode开发人员目录

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

参考文献:

如何解决“ xcode-select:错误”错误:工具“ xcodebuild”需要Xcode,但需要有效的开发人员目录 * BROKEN LINK *

xcode-选择活动的开发人员目录错误


链接1损坏
anki

2

我从App Store重新安装了Xcode,从而解决了此问题。我猜我以前的安装未完成安装


1

还有一个GUI可以在Xcode> Preferences> Locations中更改命令行工具路径:

Xcode>首选项>位置

升级到Xcode 10.3后,我又遇到了这个问题,同时将10.2.1的旧版本保留在Applications的子文件夹中。当我打开“位置”面板时,“命令行工具”的选择为空白,但是我可以在安装的两个版本之间进行选择:

命令行工具选择下拉菜单

我倾向于使用GUI选项(如果可用),而不是sudo从SO 复制命令。


0

如果您使用XCode2:sudo xcode-select --switch / Applications / Xcode \ 2.app/Contents/Developer

注意“ \”以逃脱空格。


0

今天,我遇到了这个问题,问题是我使用的是手动安装的xcode,文件名为Xcode8.3.2.app,而不是Xcode.app。重命名该应用程序解决了xcode-select抱怨的问题。这似乎表明常规appname在其搜索路径上,但变体不在。


-3

AFAIK,Mavericks中的命令行工具安装在/Applications/Xcode.app/Contents/Developer中,这往往意味着需要Xcode。未记录的功能可能。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.