安装Firebase for React时出现Grpc错误

时间:2018-05-07 15:11:41

标签: reactjs firebase

我已经尝试将此错误修复2天了。我所做的只是得到错误:

  1. create-react-app appname
  2. cd appname
  3. npm install firebase --save(以及那个无法正确安装的部分)
  4. 这些是我尝试过的主要修补程序:

    • 安装了最新版本的Python 3并将其添加到windows路径变量中。
    • 手动下载grpc并将其添加到项目中。
    • 将节点更新为v10 +。

    我还尝试了其他一些不值得一提的小事,但它并没有什么不同。他们都没有工作。我试过多个干净的反应应用程序,所以反应也不是问题。

    C:\Users\Future\Desktop\react-turbo>npm i firebase --save
    
    > grpc@1.10.1 install C:\Users\Future\Desktop\react-turbo\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-win32-x64-unknown.tar.gz
    node-pre-gyp ERR! Pre-built binaries not found for grpc@1.10.1 and node@10.0.0 (node-v64 ABI, unknown) (falling back to source compile with node-gyp)
    gyp ERR! configure error
    gyp ERR! stack Error: Can't find Python executable "C:\Users\Future\AppData\Local\Programs\Python\Python36-32\python.EXE", you can set the PYTHON env variable.
    gyp ERR! stack     at PythonFinder.failNoPython (C:\Program Files\nodejs\node_modules\npm\node_modules\node-gyp\lib\configure.js:483:19)
    gyp ERR! stack     at PythonFinder.<anonymous> (C:\Program Files\nodejs\node_modules\npm\node_modules\node-gyp\lib\configure.js:508:16)
    gyp ERR! stack     at C:\Program Files\nodejs\node_modules\npm\node_modules\graceful-fs\polyfills.js:284:29
    gyp ERR! stack     at FSReqWrap.oncomplete (fs.js:149:21)
    gyp ERR! System Windows_NT 10.0.16299
    gyp ERR! command "C:\\Program Files\\nodejs\\node.exe" "C:\\Program Files\\nodejs\\node_modules\\npm\\node_modules\\node-gyp\\bin\\node-gyp.js" "configure" "--fallback-to-build" "--library=static_library" "--module=C:\\Users\\Future\\Desktop\\react-turbo\\node_modules\\grpc\\src\\node\\extension_binary\\node-v64-win32-x64-unknown\\grpc_node.node" "--module_name=grpc_node" "--module_path=C:\\Users\\Future\\Desktop\\react-turbo\\node_modules\\grpc\\src\\node\\extension_binary\\node-v64-win32-x64-unknown"
    gyp ERR! cwd C:\Users\Future\Desktop\react-turbo\node_modules\grpc
    gyp ERR! node -v v10.0.0
    gyp ERR! node-gyp -v v3.6.2
    gyp ERR! not ok
    node-pre-gyp ERR! build error
    node-pre-gyp ERR! stack Error: Failed to execute 'C:\Program Files\nodejs\node.exe C:\Program Files\nodejs\node_modules\npm\node_modules\node-gyp\bin\node-gyp.js configure --fallback-to-build --library=static_library --module=C:\Users\Future\Desktop\react-turbo\node_modules\grpc\src\node\extension_binary\node-v64-win32-x64-unknown\grpc_node.node --module_name=grpc_node --module_path=C:\Users\Future\Desktop\react-turbo\node_modules\grpc\src\node\extension_binary\node-v64-win32-x64-unknown' (1)
    node-pre-gyp ERR! stack     at ChildProcess.<anonymous> (C:\Users\Future\Desktop\react-turbo\node_modules\grpc\node_modules\node-pre-gyp\lib\util\compile.js:83:29)
    node-pre-gyp ERR! stack     at ChildProcess.emit (events.js:182:13)
    node-pre-gyp ERR! stack     at maybeClose (internal/child_process.js:947:16)
    node-pre-gyp ERR! stack     at Process.ChildProcess._handle.onexit (internal/child_process.js:236:5)
    node-pre-gyp ERR! System Windows_NT 10.0.16299
    node-pre-gyp ERR! command "C:\\Program Files\\nodejs\\node.exe" "C:\\Users\\Future\\Desktop\\react-turbo\\node_modules\\grpc\\node_modules\\node-pre-gyp\\bin\\node-pre-gyp" "install" "--fallback-to-build" "--library=static_library"
    node-pre-gyp ERR! cwd C:\Users\Future\Desktop\react-turbo\node_modules\grpc
    node-pre-gyp ERR! node -v v10.0.0
    node-pre-gyp ERR! node-pre-gyp -v v0.7.0
    node-pre-gyp ERR! not ok
    Failed to execute 'C:\Program Files\nodejs\node.exe C:\Program Files\nodejs\node_modules\npm\node_modules\node-gyp\bin\node-gyp.js configure --fallback-to-build --library=static_library --module=C:\Users\Future\Desktop\react-turbo\node_modules\grpc\src\node\extension_binary\node-v64-win32-x64-unknown\grpc_node.node --module_name=grpc_node --module_path=C:\Users\Future\Desktop\react-turbo\node_modules\grpc\src\node\extension_binary\node-v64-win32-x64-unknown' (1)
    npm WARN ajv-keywords@3.2.0 requires a peer of ajv@^6.0.0 but none is installed. You must install peer dependencies yourself.
    npm WARN optional SKIPPING OPTIONAL DEPENDENCY: fsevents@1.2.3 (node_modules\fsevents):
    npm WARN notsup SKIPPING OPTIONAL DEPENDENCY: Unsupported platform for fsevents@1.2.3: wanted {"os":"darwin","arch":"any"} (current: {"os":"win32","arch":"x64"})
    
    npm ERR! code ELIFECYCLE
    npm ERR! errno 1
    npm ERR! grpc@1.10.1 install: `node-pre-gyp install --fallback-to-build --library=static_library`
    npm ERR! Exit status 1
    npm ERR!
    npm ERR! Failed at the grpc@1.10.1 install script.
    npm ERR! This is probably not a problem with npm. There is likely additional logging output above.
    
    npm ERR! A complete log of this run can be found in:
    npm ERR!     C:\Users\Future\AppData\Roaming\npm-cache\_logs\2018-05-07T15_01_00_277Z-debug.log
    

3 个答案:

答案 0 :(得分:4)

我建议您不要安装node最新版本(可能不是所有库都支持),而是尝试使用v8.11稳定版本。

然后有几个动作/技巧来处理这件事:

  1. 您可能正在使用Windows 10,因此请尝试停用您的防病毒软件,然后重试。如果在Linux上尝试在开始时使用命令sudo
  2. 同时检查:unable to install firebase tools cli using windows 10
  3. 而且:Error with npm install - a pre-gyp error
  4. 其他信息 关于学习Firebase,这些也可能对您有所帮助:

    https://medium.com/quick-code/how-to-integrate-react-redux-and-firebase-in-3-simple-steps-c44804a6af38

    https://www.codementor.io/yurio/all-you-need-is-react-firebase-4v7g9p4kf

答案 1 :(得分:0)

我需要将节点从10.12降级到8.11

npm install -g n
n 8.11.1
mode -v

v10.12.0

{{1}}

v8.11.1

答案 2 :(得分:0)

我不知道这是否相关,但我也遇到了类似的错误。 我试图使用 expo 安装 firebase(按照文档中的建议)

expo install firebase

这对我来说失败了。我注意到该问题与我的 package-lock.json 相关,其中添加了 node-pre-gyp。浪费了一些时间,但是当我进行 npm 安装(而不是 expo 安装)时,问题终于解决了 希望这对未来的人们有所帮助。

npm install firebase --save