Windows环境下安装Gatsby出现node-gyp错误求助
Windows下安装Gatsby遇到node-gyp Visual Studio依赖错误的解决方法
错误日志
npm ERR! code 1 npm ERR! path C:\Users\ShanmugaPriya\AppData\Roaming\npm\node_modules\gatsby-cli\node_modules\lmdb npm ERR! command failed npm ERR! command C:\Windows\system32\cmd.exe /d /s /c node-gyp-build-optional-packages npm ERR! gyp info it worked if it ends with ok npm ERR! gyp info using node-gyp@8.4.1 npm ERR! gyp info using node@16.14.2 | win32 | ia32 npm ERR! gyp info find Python using Python version 3.9.5 found at "C:\Users\ShanmugaPriya\AppData\Local\Programs\Python\Python39\python.exe" npm ERR! gyp ERR! find VS npm ERR! gyp ERR! find VS msvs_version not set from command line or npm config npm ERR! gyp ERR! find VS VCINSTALLDIR not set, not running in VS Command Prompt npm ERR! gyp ERR! find VS could not use PowerShell to find Visual Studio 2017 or newer, try re-running with '--loglevel silly' for more details npm ERR! gyp ERR! find VS looking for Visual Studio 2015 npm ERR! gyp ERR! find VS - not found npm ERR! gyp ERR! find VS not looking for VS2013 as it is only supported up to Node.js 8 npm ERR! gyp ERR! find VS npm ERR! gyp ERR! find VS ************************************************************** npm ERR! gyp ERR! find VS You need to install the latest version of Visual Studio npm ERR! gyp ERR! find VS including the "Desktop development with C++" workload. npm ERR! gyp ERR! find VS For more information consult the documentation at: npm ERR! gyp ERR! find VS https://github.com/nodejs/node-gyp#on-windows npm ERR! gyp ERR! find VS ************************************************************** npm ERR! gyp ERR! find VS npm ERR! gyp ERR! configure error npm ERR! gyp ERR! stack Error: Could not find any Visual Studio installation to use npm ERR! gyp ERR! stack at VisualStudioFinder.fail (C:\Program Files (x86)\nodejs\node_modules\npm\node_modules\node-gyp\lib\find-visualstudio.js:122:47) npm ERR! gyp ERR! stack at C:\Program Files (x86)\nodejs\node_modules\npm\node_modules\node-gyp\lib\find-visualstudio.js:75:16 npm ERR! gyp ERR! stack at VisualStudioFinder.findVisualStudio2013 (C:\Program Files (x86)\nodejs\node_modules\npm\node_modules\node-gyp\lib\find-visualstudio.js:363:14) npm ERR! gyp ERR! stack at C:\Program Files (x86)\nodejs\node_modules\npm\node_modules\node-gyp\lib\find-visualstudio.js:71:14 npm ERR! gyp ERR! stack at C:\Program Files (x86)\nodejs\node_modules\npm\node_modules\node-gyp\lib\find-visualstudio.js:384:16 npm ERR! gyp ERR! stack at C:\Program Files (x86)\nodejs\node_modules\npm\node_modules\node-gyp\lib\util.js:54:7 npm ERR! gyp ERR! stack at C:\Program Files (x86)\nodejs\node_modules\npm\node_modules\node-gyp\lib\util.js:33:16 npm ERR! gyp ERR! stack at ChildProcess.exithandler (node:child_process:406:5) npm ERR! gyp ERR! stack at ChildProcess.emit (node:events:526:28) npm ERR! gyp ERR! stack at maybeClose (node:internal/child_process:1092:16) npm ERR! gyp ERR! System Windows_NT 10.0.19044 npm ERR! gyp ERR! command "C:\\Program Files (x86)\\nodejs\\node.exe" "C:\\Program Files (x86)\\nodejs\\node_modules\\npm\\node_modules\\node-gyp\\bin\\node-gyp.js" "rebuild" npm ERR! gyp ERR! cwd C:\Users\ShanmugaPriya\AppData\Roaming\npm\node_modules\gatsby-cli\node_modules\lmdb npm ERR! gyp ERR! node -v v16.14.2 npm ERR! gyp ERR! node-gyp -v v8.4.1 npm ERR! gyp ERR! not ok npm ERR! A complete log of this run can be found in: npm ERR! C:\Users\ShanmugaPriya\AppData\Local\npm-cache\_logs\2022-07-19T05_40_40_107Z-debug-0.log
问题原因
错误根源是node-gyp无法找到可用的Visual Studio编译环境,Gatsby依赖的lmdb模块需要编译原生代码,而node-gyp必须借助Visual Studio的C++开发工具链才能完成编译。
解决步骤
- 下载并安装最新版Visual Studio(推荐2022版本),安装过程中必须勾选**Desktop development with C++**工作负载,该负载包含编译原生模块所需的编译器、SDK及相关工具。
- 安装完成后,重启终端或电脑,确保环境变量生效。
- 重新执行Gatsby CLI的安装命令:
npm install -g gatsby-cli
内容的提问来源于stack exchange,提问作者shanmuga priya
相关产品推荐
相关产品推荐

