如何解决 Windows 10 上的“node-gyp 重建”问题?

Posted

技术标签:

【中文标题】如何解决 Windows 10 上的“node-gyp 重建”问题?【英文标题】:How to solve 'node-gyp rebuild' issue on Windows 10? 【发布时间】:2015-12-04 03:16:29 【问题描述】:

作为尝试在项目中使用节点 NPM 依赖项的一部分,我遇到了 node-gyp rebuild 问题,我遇到了 reported。

我知道SO question 中的解决方案,但它不适用于 Windows 10(我是 32 位的,我不知道这是否相关)。无法安装 Windows SDK 7.1(和其他)。

有人有适用于 Windows 10 的操作解决方案吗?

更新

尝试npm install <module name> --msvs_version=2013 后,我收到一条新的错误消息:

【问题讨论】:

您是否安装了 Visual C++ (Express)? 我安装了 Visual C++ 2005、2008、2010、2012、2013 Redistributable (all x86),但没有安装 Express 版本。 你可以试试npm install <module name> --msvs_version=2013。这应该强制 node-gyp 显式使用 VC++2013 而不是尝试自动检测。 我收到一条新的错误消息。请参阅问题中的更新。 哦,我的错,我看错了你输入的内容。您至少需要安装 VC Express(确保它是“Windows 桌面”版本),而不仅仅是 VC 运行时/可再发行组件。 【参考方案1】:

要安装节点插件,您需要安装 VC/VCExpress 而不仅仅是 VC 运行时/可再发行组件。确保它是“Windows 桌面”版本。

之后,您应该可以通过 npm 安装插件(不过,您可能需要重新打开在安装 VCExpress 之前打开的所有命令提示符)。

【讨论】:

如何Make sure it's the "Windows Desktop" edition【参考方案2】:

我用这个tutorial 在 windows 8 和 windows 10 pro 上解决了这个问题。 我尝试了很多次用许多不同的解决方案来解决这个问题,但只对我有用 我注意到我没有像本教程那样使用 nodist 来控制节点版本,我使用 NVM 并且工作正常,我没有使用 nodist 测试本教程。我用的是节点 5.2.0。

编辑:

按照@prasun 的建议,步骤正确:

从HERE下载并安装Git SCM 下载 Visual Studio Community HERE 并安装自定义安装,选择以下软件包:VISUAL C++PYTHON TOOLS FOR VISUAL STUDIO微软网络开发工具 从HERE 下载并安装 Python 2.7.x 注册一个名称为:GYP_MSVS_VERSION 的环境变量,其值为:2015。

这是在 windows 8.1 和 windows 10 中唯一适合我的步骤。

【讨论】:

请在链接中添加描述,以防万一发生故障【参考方案3】:

这对我有用:

npm install --global --production windows-build-tools

【讨论】:

2021 年更新 - 作者将其标记为 2021 年年中某个时候已弃用,表示节点现在已内置这些工具的安装。但是,请注意,在 Windows 节点安装期间,您必须选中该框如果你想要的话,允许它用巧克力来安装它。

以上是关于如何解决 Windows 10 上的“node-gyp 重建”问题?的主要内容,如果未能解决你的问题,请参考以下文章

如何解决win10与Ubuntu16.04时间不同步的问题

如何在 Windows 上的 Python 2.7 上安装 Tensorflow?

如何从 Windows 10 上的容器连接到 docker 主机(Docker for Windows)

如何在 Windows 10 下卸载 Docker Machine

Windows10远程访问Ubuntu服务器上的Jupyter Notebook解决办法

如何将 Windows 终端添加到 Windows 10 上的上下文菜单? [关闭]