如何修复npm安装node-pre-gyp ERR错误

4
当我运行yarn install时,我遇到了以下错误。我删除了node_modulesyarn.lock文件并尝试了再次安装,但是没有成功,看起来是与gRPC相关的问题。
不确定该怎么办...有什么建议吗?
> grpc@1.10.1 install /Users/mynamegoeshere/Desktop/Projects2/mydemoapp2/mydemoapp/node_modules/@firebase/firestore/node_modules/grpc
> node-pre-gyp install --fallback-to-build --library=static_library

node-pre-gyp ERR! Tried to download(403): https://storage.googleapis.com/grpc-precompiled-binaries/node/grpc/v1.10.1/node-v64-darwin-x64-unknown.tar.gz 
node-pre-gyp ERR! Pre-built binaries not found for grpc@1.10.1 and node@10.16.3 (node-v64 ABI, unknown) (falling back to source compile with node-gyp) 
node-pre-gyp ERR! Pre-built binaries not installable for grpc@1.10.1 and node@10.16.3 (node-v64 ABI, unknown) (falling back to source compile with node-gyp) 
node-pre-gyp ERR! Hit error Connection closed while downloading tarball file 
  CXX(target) Release/obj.target/grpc/deps/grpc/src/core/lib/surface/init.o
  CXX(target) Release/obj.target/grpc/deps/grpc/src/core/lib/surface/init.o
rm: ./Release/.deps/Release/obj.target/grpc/deps/grpc/src/core/lib/surface/init.o.d.raw: No such file or directory
make: *** [Release/obj.target/grpc/deps/grpc/src/core/lib/surface/init.o] Error 1
gyp ERR! build error 
gyp ERR! stack Error: `make` failed with exit code: 2
npm ERR! Failed at the grpc@1.10.1 install script.

这可能会对你有所帮助。 - Omri Attiya
你是说要升级主角吗?我在我的 package.json 文件中搜索了一下,没有提到 protagonist 的引用? - Jack
2个回答

4

这个版本的 grpc 库过旧,不兼容该 Node 版本。您应该使用较新的 grpc 版本或较旧的 Node 版本。目前最新版本的 grpc 是1.24.2。


尝试了许多不同的方法来解决这个错误,但都没有成功。使用yarn安装成功了。 - frmbelz

2

我遇到了同样的错误,只是版本有所不同。我的系统是Ubuntu 20.04。一个项目需要Node 10.x,但是无法通过yarn install安装。在yarn.lock文件中,有两个版本的grpc依赖项,一个是pkgcloudgrpc v1.14.1版本。但是它在google-gaxgrpc v1.9.1版本上出现了错误。以下步骤使我成功安装和构建:

  • 打开yarn.lock文件
  • 删除错误版本的grpc依赖项所在行,然后保存。例如:
...
google-gax@^0.15.0:
  version "0.15.0"
  ...
  grpc "~1.9.1" <--- deleted this
  ...
  • 运行 yarn install --ignore-engines (我必须使用--ignore-engines

这将更新yarn.lock中的一些依赖项,并删除了包含grpc@~1.9.1的部分,项目已安装并构建完成。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接