在运行npm安装时看到以下错误,需要node-gyp…但可以被任何需要xcode-select的东西触发。

xcodebuild工具需要Xcode,但是是活动的 开发者目录'/Library/ developer /CommandLineTools'是一个命令 直线工具实例

有什么问题吗?


当前回答

就我而言,

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 

这对我很管用。

其他回答

我得先运行这个

sudo xcode-select --reset

then

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

然后就成功了。

以上的解决方案都对我没有帮助。我在做一个老项目,我的电脑上安装了最新版本的NodeJs (v14.x)。

不支持10.1以上的节点版本。x为我工作,测试时,我收到了相同的错误上面。

解决方案

我安装了“n”,这是一个nodeJs版本管理器,比如nvm 我把我的nodeJs版本降级到9.x NPM安装现在工作了。

我现在需要更新我的版本,或者在package.json中指定我的节点版本。

请按以下步骤操作:

最新版本的Xcode可以从https://developer.apple.com/xcode/download/下载 除非另有说明,否则将在“下载”中下载。请确保检查你下载和提取Xcode的路径 现在不像其他下载的应用程序,在提取时,Xcode没有提供将其移动到应用程序的选项 注意XCODE-ACTUAL-LOCATION或将其移动到应用程序 注意你是否下载了Xcode或Xcode-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

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

如果你使用的是Xcode测试版,运行

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

而不是

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