Windows10 Home
(環境によっては他のバージョンも適用されるかも
> node -v
v6.5.0
> npm -v
3.10.3
https://www.python.org/downloads/
インストール時、pathの環境変数追加のチェックオフとなっているのでチェックを入れると少し手間が省けます。
> python -V
Python 2.7.12
> npm i -g nodebot-workshop
...(省略)
gyp ERR! configure error
gyp ERR! stack Error: Can't find Python executable "python", you can set the PYTHON env variable.
gyp ERR! stack at failNoPython (C:¥Program Files¥nodejs¥node_modules¥npm¥node_modules¥node-gyp¥lib¥configure.js:401:14)
gyp ERR! stack at C:¥Program Files¥nodejs¥node_modules¥npm¥node_modules¥node-gyp¥lib¥configure.js:356:11
gyp ERR! stack at FSReqWrap.oncomplete (fs.js:123:15)
gyp ERR! System Windows_NT 10.0.10586
gyp ERR! command "C:¥¥Program Files¥¥nodejs¥¥node.exe" "C:¥¥Program Files¥¥nodejs¥¥node_modules¥¥npm¥¥node_modules¥¥node-gyp¥¥bin¥¥node-gyp.js" "rebuild"
gyp ERR! cwd C:¥Users¥labsk¥AppData¥Roaming¥npm¥node_modules¥nodebot-workshop¥node_modules¥weak
gyp ERR! node -v v6.5.0
gyp ERR! node-gyp -v v3.3.1
gyp ERR! not ok
pythonをインストールし、pathを通す
> npm i -g nodebot-workshop
...(省略)
gyp ERR! configure error
gyp ERR! stack Error: Python executable "C:¥{$UserDir}¥AppData¥Local¥Programs¥Python¥Python35¥python.EXE" is v3.5.2, which is not supported by gyp.
gyp ERR! stack You can pass the --python switch to point to Python >= v2.5.0 & < 3.0.0.
python v3系をインストールされているので、python v2系のインストールが必要
> npm i -g nodebot-workshop
...(省略)
>if not defined npm_config_node_gyp (node "C:¥Program Files¥nodejs¥node_modules¥npm¥bin¥node-gyp-bin¥¥..¥..¥node_modules¥node-gyp¥bin¥node-gyp.js" rebuild ) else (node "" rebuild )
このソリューション内のプロジェクトを 1 度に 1 つずつビルドします。並行ビルドを有効にするには、"/m" スイッチを追加してく ださい。
MSBUILD : error MSB3428: Visual C++ コンポーネント "VCBuild.exe" を読み込めませんでした。この問題を解決するには、次のい ずれかを行ってください。 1) .NET Framework 2.0
SDK インストールする。 2) Microsoft Visual Studio 2005 をインストールする。 3) その他の場所にインストールされている場合、コンポーネントの場所をシステム パスに追加する。 [C:¥Users¥la
bsk¥AppData¥Roaming¥npm¥node_modules¥nodebot-workshop¥node_modules¥weak¥build¥binding.sln]
gyp ERR! build error
gyp ERR! stack Error: `C:¥Windows¥Microsoft.NET¥Framework¥v4.0.30319¥msbuild.exe` failed with exit code: 1
gyp ERR! stack at ChildProcess.onExit (C:¥Program Files¥nodejs¥node_modules¥npm¥node_modules¥node-gyp¥lib¥build.js:276:23)
gyp ERR! stack at emitTwo (events.js:106:13)
gyp ERR! stack at ChildProcess.emit (events.js:191:7)
gyp ERR! stack at Process.ChildProcess._handle.onexit (internal/child_process.js:215:12)
gyp ERR! System Windows_NT 10.0.10586
gyp ERR! command "C:¥¥Program Files¥¥nodejs¥¥node.exe" "C:¥¥Program Files¥¥nodejs¥¥node_modules¥¥npm¥¥node_modules¥¥node-gyp¥¥bin¥¥node-gyp.js" "rebuild"
gyp ERR! cwd C:¥Users¥labsk¥AppData¥Roaming¥npm¥node_modules¥nodebot-workshop¥node_modules¥weak
gyp ERR! node -v v6.5.0
gyp ERR! node-gyp -v v3.3.1
gyp ERR! not ok
VisualStudio、もしくは Visual C++ Build Toolsのインストールが必要
npm install のコンパイル時に利用されるVisual Studio のバージョンを指定
npm install --msvs_version=2012
http://landinghub.visualstudio.com/visual-cpp-build-tools
> npm i -g nodebot-workshop
...(省略)
weakref.cc
win_delay_load_hook.c
C:¥Program Files¥nodejs¥node_modules¥npm¥node_modules¥node-gyp¥src¥win_delay_load_hook.c(34): error C2373: '__pfnDliNot
ifyHook2': redefinition; different type modifiers [C:¥Users¥labsk¥AppData¥Roaming¥npm¥node_modules¥nodebot-workshop¥nod
e_modules¥weak¥build¥weakref.vcxproj]
C:¥Program Files (x86)¥Microsoft Visual Studio 14.0¥VC¥include¥delayimp.h(134): note: see declaration of '__pfnDliNot
ifyHook2'
npm を最新バージョンに
>npm -g install npm@next
>npm -v
3.10.7
> npm i -g nodebot-workshop
...(省略)
npm ERR! Error: EPERM: operation not permitted, rename 'C:¥{$UserDir}¥AppData¥Roaming¥npm¥node_modules¥nodebot-workshop' -> 'C:¥Users¥labsk¥AppData¥Roaming¥npm¥node_modules¥.nodebot-workshop.DELETE'
npm ERR! at moveAway (C:¥Users¥labsk¥AppData¥Roaming¥npm¥node_modules¥npm¥lib¥install¥action¥finalize.js:38:5)
npm ERR! at destStatted (C:¥Users¥labsk¥AppData¥Roaming¥npm¥node_modules¥npm¥lib¥install¥action¥finalize.js:27:7)
npm ERR! at FSReqWrap.oncomplete (fs.js:123:15)
npm ERR!
npm ERR! Error: EPERM: operation not permitted, rename 'C:¥Users¥labsk¥AppData¥Roaming¥npm¥node_modules¥nodebot-workshop' -> 'C:¥Users¥labsk¥AppData¥Roaming¥npm¥node_modules¥.nodebot-workshop.DELETE'
npm ERR! at Error (native)
npm ERR! Error: EPERM: operation not permitted, rename 'C:¥Users¥labsk¥AppData¥Roaming¥npm¥node_modules¥nodebot-workshop' -> 'C:¥Users¥labsk¥AppData¥Roaming¥npm¥node_modules¥.nodebot-workshop.DELETE'
npm ERR! at moveAway (C:¥Users¥labsk¥AppData¥Roaming¥npm¥node_modules¥npm¥lib¥install¥action¥finalize.js:38:5)
npm ERR! at destStatted (C:¥Users¥labsk¥AppData¥Roaming¥npm¥node_modules¥npm¥lib¥install¥action¥finalize.js:27:7)
npm ERR! at FSReqWrap.oncomplete (fs.js:123:15)
npm ERR!
npm ERR! Error: EPERM: operation not permitted, rename 'C:¥Users¥labsk¥AppData¥Roaming¥npm¥node_modules¥nodebot-workshop' -> 'C:¥Users¥labsk¥AppData¥Roaming¥npm¥node_modules¥.nodebot-workshop.DELETE'
npm ERR! at Error (native)
npm ERR!
npm ERR! Please try running this command again as root/Administrator.
npm ERR! Please include the following file with any support request:
npm ERR! C:¥WINDOWS¥system32¥npm-debug.log
ファイルパスが長すぎるため削除出来ず、Explorerから直接削除する。
C:¥{$UserDir}¥AppData¥Roaming¥npm¥node_modules¥.nodebot-workshop.DELETE を削除
https://github.com/nodejs/node-gyp#installation
https://github.com/Microsoft/nodejs-guidelines/blob/master/windows-environment.md