npm install 并在 node-gyp 重建时失败,使用 ``gyp: No Xcode or CLT version detected!``` 由新的 macos catalina 更新引起
Posted
技术标签:
【中文标题】npm install 并在 node-gyp 重建时失败,使用 ``gyp: No Xcode or CLT version detected!``` 由新的 macos catalina 更新引起【英文标题】:npm install and fails on node-gyp rebuild with ```gyp: No Xcode or CLT version detected!``` caused by new macos catalina update 【发布时间】:2021-02-13 07:57:55 【问题描述】:gyp:未检测到 Xcode 或 CLT 版本!
吉普错误!配置错误
吉普错误!堆栈错误:gyp
失败,退出代码:1
吉普错误! ChildProcess.onCpExit 的堆栈(/Users/synapse/.nvm/versions/node/v8.8.0/lib/node_modules/npm/node_modules/node-gyp/lib/configure.js:344:16)
吉普错误!堆栈在 emitTwo (events.js:125:13)
吉普错误! ChildProcess.emit (events.js:213:7) 的堆栈
吉普错误!堆栈在 Process.ChildProcess._handle.onexit (internal/child_process.js:200:12)
吉普错误!系统达尔文 19.3.0
吉普错误!命令“/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" "重建"
吉普错误! cwd /Users/synapse/Documents/synapsefi-dev-ui/node_modules/watchpack/node_modules/fsevents
吉普错误!节点-v v8.8.0
吉普错误!节点gyp -v v5.0.3
吉普错误!不好
npm WARN synapsefi-dev-ui@2.0.20 没有存储库字段。
npm WARN 包 country-data 包含在开发和生产依赖项中。
npm WARN 包 react-dropzone 作为开发和生产依赖项包含在内。
npm WARN 可选跳过可选依赖:fsevents@1.2.11 (node_modules/watchpack/node_modules/fsevents):
npm WARN 可选跳过可选依赖:fsevents@1.2.11 in
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
摊位:node-gyp rebuild
npm WARN 可选跳过可选依赖:退出状态 1
【问题讨论】:
macOS Big Sur 问题仍然存在 :-( ***.com/questions/68545087/… 【参考方案1】:转到您的查找器并输入“终端”以打开终端应用程序。 复制和粘贴:sudo rm -rf /Library/Developer/CommandLineTools 推入 *您现在已经手动删除了命令行工具
然后转到https://developer.apple.com/download/more/ 并搜索“Xcode 11.3.1 命令行工具” 点击它然后下载它 *您现在已经手动添加了一个命令行工具集
**注意:我的 Macbook Pro 然后一直告诉我更新我的命令行软件。我最终将我的软件更新为 Xcode 12.2 的命令行工具,它仍然可以工作。如果您的计算机设置显示可用,我建议您尝试更新您的命令行工具。如果没有,请执行我刚才提到的步骤,它应该可以工作:slight_smile:
【讨论】:
【参考方案2】:存储库node-gyp
包含专门针对 macOS Catalina 的故障排除指南:
https://github.com/nodejs/node-gyp/blob/master/macOS_Catalina.md
TLDR:
macOS Catalina (v10.15) 安装说明
升级到 macOS Catalina 和运行软件更新 Catalina 可能会导致正常的 node-gyp 安装失败。这有可能 在 npm install 期间表现为以下错误:
gyp: No Xcode or CLT version detected!
解决方案
安装Xcode库
包含来自 App Store 应用的完整 Xcode(约 7.6 GB 下载)。 通过node-gyp
需要的三种方式 苹果系统。运行 Catalina 的人取得了一些成功,但没有 其他人以不可预测的方式。xcode-select --install
使用更小的 Xcode 命令行工具 通过手动下载使用更小的 Xcode 命令行工具。
【讨论】:
【参考方案3】:尝试运行命令npm config set sass_binary_site=https://npm.taobao.org/mirrors/node-sass
,我的问题已通过更改node-sass的源来解决。
【讨论】:
以上是关于npm install 并在 node-gyp 重建时失败,使用 ``gyp: No Xcode or CLT version detected!``` 由新的 macos catalina 更新引起的主要内容,如果未能解决你的问题,请参考以下文章
npm install 时卡在了node-gyp rebuild
需要 node-gyp 的 npm install 在 Windows 上失败
npm install jquery 在 node-gyp 重建时失败