[英]Can't install socket.io on Windows 7
我是Node.js和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]
我想這是一個構建錯誤所以我花了很多時間谷歌搜索和更新我的Windows SDK,Visual Studio,.Net Framework等。 以某種形式,我得到上述錯誤。 根據此鏈接https://connect.microsoft.com/VisualStudio/feedback/details/713415/erroneous-windows-sdk-x64-compilation-warning ,警告可能是錯誤的,因為我在x64機器上。 我確實看到winsock2.h位於C:\\ Program Files \\ Microsoft SDKs \\ Windows \\ v7.1 \\ Include中並包含在我的路徑中。 我的路徑包含以下內容:
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;
與此路徑相同的錯誤。 有任何想法嗎?
我試圖在npm安裝socket.io時遇到類似的問題
從這里https://github.com/LearnBoost/socket.io/issues/1151#issuecomment-16015421
我最終設置了這個環境變量:
set GYP_MSVS_VERSION=2013
這是在安裝Windows SP1(准備安裝程序)之后,然后是SP1安裝程序然后101更新來自Windows更新,然后是VS 2013 Express。
很容易: - /
Windows 7 x64上的節點安裝存在問題。 基本上,在使用msbuild構建解決方案時,必須明確指定Platform Toolset。 這是一個適合我的解決方案:在您的終端運行中:
調用“C:\\ Program Files \\ Microsoft SDKs \\ Windows \\ v7.1 \\ bin \\ Setenv.cmd”/ Release / x64
然后運行
npm install socket.io
更多信息在這里
您是否以足夠的權限啟動CMD提示? 我有時遇到過npm安裝問題。
如果是這種情況,jst以管理員身份運行CMD。
所以盡管我對於運行shell作為管理員的工作意見,我遇到了另一台機器上這個問題,我仍在運行shell作為管理員。
(為了搜索引擎的利益,下面提供了相當完整的錯誤摘錄)
這些錯誤似乎與node-gyp
,我無法獨立安裝,並發現了一些有用的注意事項 :
你需要:
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]
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.