You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

MacOS M1设备yarn install安装bcrypt出现node-pre-gyp报错问题问询

报错根因
  • 核心问题1:你的项目路径包含空格(/Users/raydman/Projects/main inf/backend中的「main inf」),编译时路径被截断,导致找不到依赖文件
  • 核心问题2:你使用的bcrypt@5.0.1未提供Mac M系列芯片(arm64架构)对应的预编译二进制包,拉取404后fallback到本地编译又被路径问题阻断
  • 额外影响:本地默认Python版本为2.7,与新版node-gyp兼容性差,也可能导致编译失败
可行解决步骤

第一步:修复路径问题

将项目父文件夹名称中的空格删除,比如把main inf改为main_inf或maininf,确保项目完整路径没有任何空格、中文或特殊字符。

bcryptjs是纯JS实现无需编译,安装它也报错100%是路径空格导致的,修复路径后可先尝试重新安装验证。

第二步:适配M系列芯片安装bcrypt

选择以下任意一种方案即可:

方案1(推荐):升级bcrypt到适配版本

bcrypt@5.0.2及以上版本已官方支持Mac arm64架构预编译包,无需本地编译直接安装:

yarn add bcrypt@latest

方案2(需保留bcrypt@5.0.1版本时使用):配置本地编译环境

  1. 先安装Xcode命令行工具,提供编译所需的clang、make等依赖:
xcode-select --install
  1. 安装Python3,配置npm使用Python3作为编译默认Python版本:
npm config set python python3
  1. 清理bcrypt缓存后重新安装:
yarn cache clean bcrypt
yarn add bcrypt@5.0.1

验证方法

安装完成后执行node -e "console.log(require('bcrypt').hashSync('test', 10))",如果输出加密后的哈希字符串则说明安装成功。

内容的提问来源于stack exchange,提问作者Dmitry Bochok

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.03 09:18:03