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

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

有什么问题吗?


当前回答

以防你使用xcode beta版:

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

其他回答

当需要一个完整的常规Xcode时,Xcode -select developer目录指向/Library/ developer /CommandLineTools时发生此问题(当CommandLineTools安装在Xcode之后时发生)

解决方案:

如果你还没有Xcode,请安装它(从https://appstore.com/mac/apple/xcode获取)。 接受条款和条件。 确保Xcode app在/Applications目录下(不是/Users/{user}/Applications)。 使用以下命令将Xcode -select指向Xcode app Developer目录: sudo xcode-select -s /Applications/Xcode.app/Contents/Developer

注意:确保你的Xcode应用路径是正确的。

Xcode: / / Xcode /内容/应用开发者 Xcode-beta: / / Xcode-beta.app /内容/应用开发者

只需运行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-select——安装 修改主目录: sudo xcode-select -switch /Library/Developer/CommandLineTools

这对我很管用(git)。

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

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

解决方案

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

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

我在高海拔地区也遇到了同样的问题。 运行下面的命令可以解决这个问题

npm explore npm -g -- npm install node-gyp@latest