每次我try npm install次.我得到以下错误.我该怎么修?

gyp: No Xcode or CLT version detected!

我在node -v → v8.8.0&npm -v → v6.11.3

我试图在VSCode终端和iTerm上运行它,但最终都得到了相同的错误.(二者均更新至最新版本).我做的唯一一件新事情是将macOS更新到最新版本(今天是Catalina 10.15.3).

$ npm install          Fri Mar  6 17:22:40 2020

> fsevents@1.2.11 install /Users/synapse/Documents/synapsefi-dev-ui/node_modules/watchpack/node_modules/fsevents
> node-gyp rebuild

No receipt for 'com.apple.pkg.CLTools_Executables' found at '/'.

No receipt for 'com.apple.pkg.DeveloperToolsCLILeo' found at '/'.

No receipt for 'com.apple.pkg.DeveloperToolsCLI' found at '/'.

gyp: No Xcode or CLT version detected!
gyp ERR! configure error
gyp ERR! stack Error: `gyp` failed with exit code: 1
gyp ERR! stack     at ChildProcess.onCpExit (/Users/synapse/.nvm/versions/node/v8.8.0/lib/node_modules/npm/node_modules/node-gyp/lib/configure.js:344:16)
gyp ERR! stack     at emitTwo (events.js:125:13)
gyp ERR! stack     at ChildProcess.emit (events.js:213:7)
gyp ERR! stack     at Process.ChildProcess._handle.onexit (internal/child_process.js:200:12)
gyp ERR! System Darwin 19.3.0
gyp ERR! command "/Users/synapse/.nvm/versions/node/v8.8.0/bin/node" "/Users/synapse/.nvm/versions/node/v8.8.0/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js" "rebuild"
gyp ERR! cwd /Users/synapse/Documents/synapsefi-dev-ui/node_modules/watchpack/node_modules/fsevents
gyp ERR! node -v v8.8.0
gyp ERR! node-gyp -v v5.0.3
gyp ERR! not ok
npm WARN synapsefi-dev-ui@2.0.20 No repository field.
npm WARN The package country-data is included as both a dev and production dependency.
npm WARN The package react-dropzone is included as both a dev and production dependency.
npm WARN optional SKIPPING OPTIONAL DEPENDENCY: fsevents@1.2.11 (node_modules/watchpack/node_modules/fsevents):
npm WARN optional SKIPPING OPTIONAL DEPENDENCY: fsevents@1.2.11 install: `node-gyp rebuild`
npm WARN optional SKIPPING OPTIONAL DEPENDENCY: Exit status 1

推荐答案

即使你已经安装了它们(我的 case ),但是通过升级到Catalina(10.15.*)你可以得到这个错误(我的 case :).

因此,简单地安装是没有帮助的,因为你会得到一个错误,他们已经安装.

因此,希望你只需要使用(I) reset个工具,或者在更糟糕的情况下使用(II) uninstall and install个(需要102个)工具(这是基于@Dane_duPlessis的答案).

# just for а preview (not necessary)
xcode-select --print-path
# in my case it printed `/Library/Developer/CommandLineTools`

# could be useful if the path is making a problem
sudo xcode-select --switch /Library/Developer/CommandLineTools

# only for the (I) resetting case
sudo xcode-select --reset

# only for the (II) uninstalling case - the next line deletes folder returned by the `xcode-select --print-path` command
sudo rm -rf $(xcode-select --print-path)


# only for the (II) uninstalling case - install tools (again) if you don't get a default installation prompt
xcode-select --install

NOTE:

  • 你不需要每个项目都做,只需要做一次
  • 还有人讨论说,每次OSX更新都必须这样做,在我的情况下,后来更新OSX系统不会再次引发这个问题

学分:gyp: No Xcode or CLT version detected macOS Catalina

Node.js相关问答推荐

在导入时未找到Pupeteer-PAGE-Proxy包

JsonwebToken过期后如何注销和清除cookie?

一个函数中的两个依赖的NodeJS数据库操作.如果第二个失败了怎么办?

Node-Red Tasmota 错误:连接 ECONNREFUSED 192.168.77.21:1883

Nestjs重写子类dto nodejs中的属性

如果我在父文件夹中运行,子进程生成不起作用

MongoDB:通过匹配输入字符串或输入字符串中的单个单词进行搜索

Typescript 正则表达式:过滤器返回空

未捕获的错误: 只能用作 元素的子元素,永远不会直接呈现.请将您的 包裹在

如何使用 $PATH 变量在系统中全局自动安装 bash 脚本?或者重写脚本到node

Axios GET 返回不可读的响应

Mongodb 从文档中获取聚合结果中的特定属性

mongoose.model() 方法返回未定义

即使部署成功,也不会触发 Firebase 函数来填充 Firestore 集合.为什么?

如何以编程方式检测nodejs中的调试模式?

如何在 node 调试器中禁用第一行中断

如何将`yarn.lock`与`package.json`同步?

create-react-app,安装错误(找不到命令)

按日期时间字段获取最新的 MongoDB 记录

如何在express 中设置默认路径(路由前缀)?