无法在Windows 7上安装socket.io

我是Node和NPM的新手。 我使用Node v0.10.0,当我运行npm install socket.io命令时,出现以下错误:

C:\Users\USER\AppData\Roaming\npm\node_modules\socket.io\node_modules\socket.io- client\node_modules\ws>node "C:\Users\USER\AppData\Roaming\npm\node_modules\npm\ bin\node-gyp-bin\\..\..\node_modules\node-gyp\bin\node-gyp.js" rebuild C:\Program Files (x86)\MSBuild\Microsoft.Cpp\v4.0\Microsoft.CppBuild.targets(29 7,5): warning MSB8003: Could not find WindowsSDKDir variable from the registry. TargetFrameworkVersion or PlatformToolset may be set to an invalid version nu mber. [C:\Users\USER\AppData\Roaming\npm\node_modules\socket.io\node_modules\so cket.io-client\node_modules\ws\build\bufferutil.vcxproj] bufferutil.cc c:\users\user\.node-gyp\0.10.0\deps\uv\include\uv-private/uv-win.h(32): fatal e rror C1083: Cannot open include file: 'winsock2.h': No such file or directory [ C:\Users\USER\AppData\Roaming\npm\node_modules\socket.io\node_modules\socket.io -client\node_modules\ws\build\bufferutil.vcxproj] 

我想这是一个构build错误,所以我花了很多时间谷歌search和更新我的Windows SDK,Visual Studio,.Net框架,等等。 在一种或另一种forms,我得到上述错误。 根据这个链接https://connect.microsoft.com/VisualStudio/feedback/details/713415/erroneous-windows-sdk-x64-compilation-warning警告可能是错误的,因为我在一台x64机器上。 我确实发现winsock2.h位于C:\ Program Files \ Microsoft SDK \ Windows \ v7.1 \ Include中,并且包含在我的path中。 我的path包含以下内容:

C:\Program Files\nodejs\;C:\Program Files (x86)\Microsoft Visual Studio 8\VC\vcpackages;C:\Program Files\Microsoft Windows Performance Toolkit\;C:\Program Files (x86)\Microsoft Visual Studio 8\VC\include;C:\Program Files\Microsoft SDKs\Windows\v7.1\Lib;C:\Program Files\Microsoft SDKs\Windows\v7.1\Include;C:\Program Files (x86)\Microsoft Visual Studio 8\VC\include;C:\Program Files\Debugging Tools for Windows (x64)\winext\manifest;C:\Program Files\Microsoft SDKs\Windows\v7.1\Lib\x64;

与此path相同的错误。 有任何想法吗?

我search了一个类似的问题试图npm安装socket.io广泛和广泛

从这里https://github.com/LearnBoost/socket.io/issues/1151#issuecomment-16015421

我结束了设置这个环境variables:

 set GYP_MSVS_VERSION=2013 

这是安装Windows SP1(准备安装程序)后,然后SP1安装程序,然后101更新从Windows更新然后VS 2013 Express。

容易: – /

Windows 7 x64上的节点安装存在问题。 基本上,您必须在使用msbuild构build解决scheme时明确指定平台工具集。 这是一个适用于我的解决scheme:在您的terminal运行:

调用“C:\ Program Files \ Microsoft SDKs \ Windows \ v7.1 \ bin \ Setenv.cmd”/ Release / x64

然后运行

npm安装socket.io

更多信息在这里

您是否以足够的权限启动CMD提示? 我有npm安装的问题偶尔b / c的这个。

如果是这样,运行CMD作为pipe理员。

所以,尽pipe我对pipe理员运行shell有任何意见,但是在另外一台运行shell的pipe理员身上 ,我遇到了这个问题。

(为了search引擎的好处,错误的一个非常完整的提取在下面)

这些错误似乎与node-gyp ,我无法单独安装,并发现一些帮助:

你需要:

  • Microsoft Visual Studio C ++ 2010(快速版运行良好)
    • 我已经有了这个
  • 对于64位版本的节点和本地模块,您还需要Windows 7 64位SDK
    • 这个安装失败,然后我发现
    • 如果您的vcredist_x86.exe比Visual C ++ 2010 x86可再发行组件版本10.0.30319更新,则SDK 7.1不会安装。

  • 我卸载了10.0。[something> 30319]
  • 安装SDK 7.1
  • 然后能够npm i -g node-inspector没有问题( socket.io是一个依赖项)

 C:\Program Files (x86)\MSBuild\Microsoft.Cpp\v4.0\Microsoft.CppBuild.targets(296,5): warning MSB800 3: Could not find VCInstallDir variable from the registry. TargetFrameworkVersion or PlatformTools et may be set to an invalid version number. [C:\Users\Michael Paulukonis\AppData\Roaming\npm\node_m odules\socket.io\node_modules\socket.io-client\node_modules\ws\build\bufferutil.vcxproj] bufferutil.cc c:\users\michael paulukonis\.node-gyp\0.10.5\deps\v8\include\v8stdint.h(33): fatal error C1083: Can not open include file: 'stddef.h': No such file or directory [C:\Users\Michael Paulukonis\AppData\R oaming\npm\node_modules\socket.io\node_modules\socket.io-client\node_modules\ws\build\bufferutil.vc xproj] C:\Program Files (x86)\MSBuild\Microsoft.Cpp\v4.0\Microsoft.CppBuild.targets(296,5): warning MSB800 3: Could not find VCInstallDir variable from the registry. TargetFrameworkVersion or PlatformTools et may be set to an invalid version number. [C:\Users\Michael Paulukonis\AppData\Roaming\npm\node_m odules\socket.io\node_modules\socket.io-client\node_modules\ws\build\validation.vcxproj] validation.cc c:\users\michael paulukonis\.node-gyp\0.10.5\deps\v8\include\v8stdint.h(33): fatal error C1083: Can not open include file: 'stddef.h': No such file or directory [C:\Users\Michael Paulukonis\AppData\R oaming\npm\node_modules\socket.io\node_modules\socket.io-client\node_modules\ws\build\validation.vc xproj]