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


680

运行npm install需要时node-gyp... 出现以下错误...但可能由需要的任何东西触发xcode-select

xcode-select:错误:工具'xcodebuild'需要Xcode,但是活动的开发人员目录'/ Library / Developer / CommandLineTools'是命令行工具实例

问题是什么?


5
YOSEMITE的作品也是如此
tjmehta,2015年

12
也为El Capitan工作
tjmehta

6
也为塞拉利昂工作
tjmehta

5
作品高塞拉利昂太
tjmehta

6
莫哈韦作品也是如此
Zohair

Answers:


1288

xcode-select开发人员目录指向/Library/Developer/CommandLineTools,需要完整的常规Xcode时发生此问题(在Xcode之后安装CommandLineTools时发生)

解:

  1. 如果还没有,安装Xcode(可从https://appstore.com/mac/apple/xcode获取 )。
  2. 接受条款和条件。
  3. 确保Xcode应用程序位于/Applications目录(NOT /Users/{user}/Applications)中。
  4. xcode-select使用以下命令指向Xcode app Developer目录:
    sudo xcode-select -s /Applications/Xcode.app/Contents/Developer

注意:确保您的Xcode应用程序路径正确。

  • Xcode: /Applications/Xcode.app/Contents/Developer
  • Xcode-beta: /Applications/Xcode-beta.app/Contents/Developer

@qodeninja然后/Applications/Xcode5-DP4.app,我认为应该替换为正确的路径。
Max Nanasy

@MaxNanasy我的意思是显而易见的。但是没有那没有用。我必须卸载并重新安装xcode才能再次运行
qodeninja 2013年

9
使用Xcode 6 Beta可以解决此问题。谢谢!sudo xcode-select -switch /Applications/Xcode6-Beta.app/Contents/Developer/
jpincheira 2014年

1
我不需要执行步骤2。安装Xcode就足够了。:)
Ryan Heathcote

11
macOS High Sierra 10.13,我已经安装了Xcode 9.2,并且在安装迦太基之后也遇到了同样的问题。刚完成了第4步,就是这样!
RAM237 '18

162

对于那些不想安装Xcode的人的其他解决方案:

  1. 安装命令行工具(如果尚未安装):

    xcode-select --install

  2. 更改活动目录:

    sudo xcode-select -switch /Library/Developer/CommandLineTools

这对我有用(git)。


23
与安装Xcode相比,我更喜欢这种解决方案,但是看起来您再也无法xcode-select从Apple 下载:cl.ly/image/2T0u2f2D471a/content

6
我想我已经安装了命令行工具,但是,这不会解决任何问题。

6
因此,是唯一可以使用的方法xcodebuild来安装整个Xcode吗?:-(

50
这个答案似乎不正确。关键是“ xcodebuild”需要Xcode,即完整安装的Xcode或CommandLineTools。在这里进行测试,切换到CommandLineTools不会停止错误,也不会停止该错误。
mikemaccana 2014年

21
这个答案不再正确。从2015年5月开始,在OSX 10.10(Yosemite)中使用命令行工具时,如果未安装完整的xcode,xcodebuild命令将不再起作用。
HipsterZipster

151

尝试使用npm安装软件包时遇到问题。我收到错误:“ sudo xcode-select -s /Applications//Xcode.app/Contents/Developer/”

要解决这个问题

  • 我打开了Xcode。
  • 偏好
  • 地点
  • 选择了Command Lin工具:Xcode 6.1.1

现在,当使用npm安装软件包时,不再出现错误。


1
修复了Robo VM设置。
Sensei

105

Xcode->首选项->位置->命令行工具

屏幕截图

选择选项:Xcode 8.x


1
单击链接并查看图像。解决这个问题并不复杂。
富兰克林A

我已经安装了8个制作和发行的xcode版本,但是以上版本可以解决我的问题。您是
救生员

当我尝试安装2版本的XCode时,这是对我唯一有效的方法。尝试xcode-select不断说“错误:无效的开发人员目录”!
mc01

这是我需要的解决方案。不确定为什么未设置该命令行工具选项。但是,一旦设置好,它就解决了我的问题。谢谢。
jdavis

50

只需运行即可sudo xcode-select -r自动重置路径。

 -r, --reset
              Unsets any user-specified developer directory, so that the developer directory will be found via the default search mechanism. This command must  be
              run with superuser permissions (see sudo(8)), and will affect all users on the system.

想知道如果我卸载xcode并遵循上述步骤,因为在xcode之后安装了CLI,将会发生什么情况。那会搅乱我现有的IOS应用程序项目吗?
凝胶

这为我工作在OSX 10.14.4在Xcode 11.3.1
拉斐尔·汗


8

我必须先运行

sudo xcode-select --reset

然后

sudo xcode-select -switch /Library/Developer/CommandLineTools

然后它起作用了。


5
对我来说,问题是在运行第一个命令后解决的。运行第二个命令又使事情崩溃了。所以只是第一个(就我而言)。谢谢。
Nate

我第二,只是--reset解决了问题
Peter Lamberg


3

从App Store安装Xcode。安装后,以root特权运行xcodebuild,即sudo xcodebuild并接受该语言。在这之后npm install bcrypt就像一个魅力!


3

没有Xcode:创建/usr/local/bin/xcodebuild包含内容的文件以欺骗XcodeSelect

  #!/bin/bash
  exit 0

chmod +x /usr/local/bin/xcodebuild


我必须说由于xcodebuild仅安装CLT时出于某种原因运行node-gyp时遇到问题。我宁愿不安装Xcode只是为了安装一些与Mac和iOS开发无关的本机扩展,因此我非常想尝试使用此技术来基本上将错误关闭。你知道这样做有什么影响吗?我只能想象到node-gyp的调用xcodebuild是有原因的,并且通过这样做,exit 0我们正在破坏给定构建的工具链,但是我不确定,因为我不知道为什么要在其中使用它xcodebuild。第一名。有任何想法吗?
alexrussell

1
我试过了,不幸的是没什么区别。我真的不想安装XCode-这只是一些Apple营销BS强迫您安装的。
亚历克斯

2

如果您使用的是Xcode beta,请运行

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

代替

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

2

我能够解决此错误而无需安装完整的Xcode应用程序。但是,您必须安装xcode命令行工具。

这里

  1. $ cd /usr/bin
  2. $ sudo mv xcodebuild xcodebuild.orig (以防万一)
  3. $ vim xcodebuild
  4. 粘贴以下内容:
#!/bin/bash
if [[ $1 == '-version' ]]; then
  echo "Xcode 10.2.1"
  echo "Build version 10E1001"
else
  /usr/bin/xcodebuild.bak $@
fi
  1. $ sudo chmod +x xcodebuild

好答案。也感谢您引用原始来源。:)
Monomeeth

1

XCode2:sudo xcode-select -s / Applications / Xcode \ 2.app/Contents/Developer

注意“ \”转义空格


1

我有两个安装了Xcode的Xcode实例xcode.app和xcode-beta.app尝试用netbeans创建构建时,它向我显示错误“找不到netbeans的受支持的xcode和命令行工具版本”

我遵循以下步骤:

  1. “ xcode-select --print-path”等于“ /Applications/Xcode.app/Contents/Developer”
  2. 存在“ /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform”
  3. “ xcodebuild -version”以“ Xcode”开头

1之后,我发现它指向xcode-beta.app

所以这是一种像魅力一样起作用的解决方案:

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


1

对于上下文,今天是2019年1月28日

在Mac上,我做了两件事来解决此问题:

  1. 在终端中运行以下命令:
    sudo xcode-select --install

  2. 重新启动Mac。

在重新启动计算机之前,问题一直在我的Android Studio中发生。重新启动后,它工作正常。另请注意,我没有--switch像其他人那样执行任何命令。我希望这有帮助。


1

我在高山区遇到了同样的问题。运行以下命令解决了它npm Explore npm -g-npm install node-gyp @ latest


1
这个工作对我来说,除了我简单地重新安装npm -g install node-gyp@latest
TY。

0
sudo xcode-select -s /Applications/Xcode 10.app/Contents/Developer

languoguangs-iMac:/ languoguang$ sudo xcode-select -s /Applications/Xcode 10.app/Contents/Developer
xcode-select: error: invalid argument '10.app/Contents/Developer'
Usage: xcode-select [options]

Print or change the path to the active developer directory. This directory
controls which tools are used for the Xcode command line tools (for example, 
xcodebuild) as well as the BSD development commands (such as cc and make).

Options:
  -h, --help                  print this help message and exit
  -p, --print-path            print the path of the active developer directory
  -s <path>, --switch <path>  set the path for the active developer directory
  --install                   open a dialog for installation of the command line developer tools
  -v, --version               print the xcode-select version
  -r, --reset                 reset to the default command line tools path
languoguangs-iMac:/ languoguang$ sudo xcode-select -s "/Applications/Xcode 10.app/Contents/Developer"

因为我在“应用程序”中的Xcode名称是“ Xcode 10”,

sudo xcode-select -s "/Applications/Xcode 10.app/Contents/Developer"

作品。


0

就我而言

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

没有用,因为我的Xcode有一些特殊的名称。例如)Xcode_11.2.0_beta_2_stackoverflow.app

cd /applications
ls

然后我找到了我的Xcode名称,然后将其替换为

sudo xcode-select -s /Applications/{myXcodeName}.app/Contents/Developer 

它为我工作。


0

以上都不对我有用。我最初分别安装了命令行工具,然后安装了所有Xcode。什么工作对我来说是卸载命令行工具如图所示这里。然后,当尝试xcode-select再次运行时,要求我重新安装它们。

*顺便说一句,之所以找到这个线程,是因为我安装了一些库(尤其是gccmacports,大概是使用旧的命令行工具,然后在开发过程中安装了完整的Xcode。因此,无论如何,对于我来说,macports在删除独立的命令行工具,重新安装它们,重新安装之后,我必须重新安装gcc,然后才能进行编译。


0

只有两个步骤所需,并全面XCode.app是不是在所有需要:

sudo rm -rf /Library/Developer/CommandLineTools
xcode-select --install

此时,将弹出“安装软件”对话框:

在此处输入图片说明

而已!


0

简单重新安装xcode-select

sudo rm -rf /Library/Developer/CommandLineTools
xcode-select --install

0

请按照以下步骤操作:

  1. 可以从https://developer.apple.com/xcode/download/下载最新版本的Xcode。
  2. 除非另有说明,否则它将在“下载”中下载。请确保检查下载和提取Xcode的路径
  3. 现在,与其他下载的应用程序不同,Xcode在提取时没有提供将其移至“应用程序”的选项。
  4. 注意XCODE-ACTUAL-LOCATION或将其移至应用程序
  5. 请注意,如果您已下载XcodeXcode-beta

基于4和5,执行以下命令之一(请先阅读上述说明,然后再执行所有命令):

sudo xcode-select -s /Applications/Xcode.app/Contents/Developer
sudo xcode-select -s /Applications/Xcode-beta.app/Contents/Developer
sudo xcode-select -s /[XCODE-ACTUAL-LOCATION]/Xcode.app/Contents/Developer
sudo xcode-select -s /[XCODE-ACTUAL-LOCATION]/Xcode-beta.app/Contents/Developer
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.