老实说,这不是我第一次设置 Windows 构建工具,但它可能是我第一次失败,这让我发疯。
重要的是,这是一台 Windows 7 x64 机器。
我试图:
npm install --global windows-build-tools
使用在管理中安装构建工具PowerShell.exe
。由于某种原因,安装程序卡在“仍在等待安装程序日志文件”。然后我遇到了https://github.com/felixrieseberg/windows-build-tools/issues/208我尝试了两个社区建议:
建议 1) - 结果相同
npm install --global --production windows-build-tools --vs2015
建议 2) - 使用不同的输出,但仍然失败。
npm install --global windows-build-tools@4.0.0
无法安装 Visual Studio 生成工具。请在日志文件中找到更多详细信息,可以在 C:\Users\admin.windows-build-tools 找到
这是日志文件: https ://pastebin.com/BU7bqWRX
- 由于我使用的是 windows-nvm,因此我决定卸载它以排除这可能是此工具产生的副作用的假设。原来这不是因为我在 Windows 安装程序中遇到了同样的问题。
安装了构建工具,我可以MSBuild.exe
从三个不同的目录运行:
C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\MSBuild\Current\Bi n
C:\Program Files (x86)\Microsoft Visual Studio\2017\BuildTools\MSBuild\Current\Bin
C:\Program Files (x86)\Microsoft Visual Studio\2019\BuildTools\MSBuild\Current\Bin
我什至在我的 %PATH% 环境变量中导出了其中一条路径。
我试图指定 msvs_version 如下:
npm config set msvs_version 2017
仍然没有运气npm config set msvs_version 2019
没运气
以下是我的内容.npmrc
; cli configs
metrics-registry = "https://registry.npmjs.org/"
scope = ""
user-agent = "npm/6.14.4 node/v13.14.0 win32 x64"
; userconfig C:\Users\admin\.npmrc
msvs_version = "2019"
; globalconfig C:\Users\admin\AppData\Roaming\npm\etc\npmrc
python = "C:\\Users\\admin\\.windows-build-tools\\python27\\python.exe"
; builtin config undefined
prefix = "C:\\Users\\admin\\AppData\\Roaming\\npm"
; node bin location = C:\Program Files\nodejs\node.exe
; cwd = C:\Users\admin
; HOME = C:\Users\admin
; "npm config ls -l" to show all defaults.
所以,无论我做什么,每次 npm 在需要的地方安装本机模块node-gyp
时,我都会收到以下错误:
gyp ERR! find VS msvs_version was set from command line or npm config
gyp ERR! find VS - looking for Visual Studio version 2019
gyp ERR! find VS running in VS Command Prompt, installation path is:
gyp ERR! find VS "C:\Program Files (x86)\Microsoft Visual Studio"
gyp ERR! find VS - will only use this version
gyp ERR! find VS checking VS2019 (16.11.32106.194) found at:
gyp ERR! find VS "C:\Program Files (x86)\Microsoft Visual Studio\2019\Community"
gyp ERR! find VS - found "Visual Studio C++ core features"
gyp ERR! find VS - found VC++ toolset: v142
gyp ERR! find VS - found Windows SDK: 10.0.19041.0
gyp ERR! find VS - does not match this Visual Studio Command Prompt
gyp ERR! find VS checking VS2019 (16.11.32106.194) found at:
gyp ERR! find VS "C:\Program Files (x86)\Microsoft Visual Studio\2019\BuildTools
"
gyp ERR! find VS - found "Visual Studio C++ core features"
gyp ERR! find VS - missing any VC++ toolset
gyp ERR! find VS checking VS2017 (15.9.28307.1585) found at:
gyp ERR! find VS "C:\Program Files (x86)\Microsoft Visual Studio\2017\BuildTools
"
gyp ERR! find VS - found "Visual Studio C++ core features"
gyp ERR! find VS - found VC++ toolset: v141
gyp ERR! find VS - found Windows SDK: 10.0.17763.0
gyp ERR! find VS - msvs_version does not match this version
gyp ERR! find VS could not find a version of Visual Studio 2017 or newer to use
gyp ERR! find VS looking for Visual Studio 2015
gyp ERR! find VS - not found
gyp ERR! find VS not looking for VS2013 as it is only supported up to Node.js 8
gyp ERR! find VS msvs_version does not match this VS Command Prompt or the
gyp ERR! find VS installation cannot be used.
gyp ERR! find VS
gyp ERR! find VS **************************************************************
gyp ERR! find VS You need to install the latest version of Visual Studio
gyp ERR! find VS including the "Desktop development with C++" workload.
gyp ERR! find VS For more information consult the documentation at:
gyp ERR! find VS https://github.com/nodejs/node-gyp#on-windows
gyp ERR! find VS **************************************************************
gyp ERR! find VS
gyp ERR! configure error
gyp ERR! stack Error: Could not find any Visual Studio installation to use
gyp ERR! stack at VisualStudioFinder.fail (C:\Program Files\nodejs\node_modu
les\npm\node_modules\node-gyp\lib\find-visualstudio.js:121:47)
gyp ERR! stack at C:\Program Files\nodejs\node_modules\npm\node_modules\node
-gyp\lib\find-visualstudio.js:74:16
gyp ERR! stack at VisualStudioFinder.findVisualStudio2013 (C:\Program Files\
nodejs\node_modules\npm\node_modules\node-gyp\lib\find-visualstudio.js:351:14)
gyp ERR! stack at C:\Program Files\nodejs\node_modules\npm\node_modules\node
-gyp\lib\find-visualstudio.js:70:14
gyp ERR! stack at C:\Program Files\nodejs\node_modules\npm\node_modules\node
-gyp\lib\find-visualstudio.js:372:16
gyp ERR! stack at C:\Program Files\nodejs\node_modules\npm\node_modules\node
-gyp\lib\util.js:54:7
gyp ERR! stack at C:\Program Files\nodejs\node_modules\npm\node_modules\node
-gyp\lib\util.js:33:16
gyp ERR! stack at ChildProcess.exithandler (child_process.js:310:5)
gyp ERR! stack at ChildProcess.emit (events.js:315:20)
gyp ERR! stack at maybeClose (internal/child_process.js:1026:16)
gyp ERR! System Windows_NT 6.1.7601
gyp ERR! command "C:\\Program Files\\nodejs\\node.exe" "C:\\Program Files\\nodej
s\\node_modules\\npm\\node_modules\\node-gyp\\bin\\node-gyp.js" "rebuild"
gyp ERR! cwd c:\dev\test-app\node_modules\firebird
gyp ERR! node -v v13.14.0
gyp ERR! node-gyp -v v5.1.0
gyp ERR! not ok
你有什么其他的建议?