Windowsでnpm installしてnode-gypでつまずいた時対処方法

  • 35
    Like
  • 2
    Comment

概要

タイトルのとおり、OSXやLinuxあたりではnpm installできるのに
Windowsの場合にnode-gypあたりのエラーがでてnpm installできない場合の対処

今回はWindows7 32bitに入れた手順で記載。

以下の記事は自力で対応した時のもので、現在は以下手順を自動化してくれるwindows-build-toolsというものがあります。

npm installするだけでC++コンパイラやPython2.7をインストールしてくれるので
自分でやるより簡単です。

  npm install --global windows-build-tools

 @syuilo さんありがとうございました。

対応手順

ざっくりいくとCコンパイラとpythonいれてnpmに使わせる設定が必要
いろいろなところで対処法が記載されているが、node-gypのreadmeが一番わかりやすかった

Install C++

VisualC++が必要らしい。VisualStudio2015が入っているならこの手順は不要(のはず)

Visual C++ Build Toolsからダウンロードしてインストールする。
結構時間がかかる。

Install Python

pythonも必要らしい。
そしてpython3.x系は未対応ということなので2.7系をインストールする。
python

インストール場所はカスタムでも問題ない。

npm config

インストールしたC++とpythonをnpmに教える。
コマンドプロンプトから以下を叩く

pythonの方は例で記載。
例のとおり、python.exeまでの絶対パスで教えてやる必要がある
(PATHのようにフォルダの指定では×)

npm config set msvs_version 2015
npm config set python d:\install\python27\python.exe

さぁnpm installだ

以上の手順をしたあとnode-gypのインストールをする

npm install -g node-gyp

なんかエラーがでたらrebuildすると幸せになれるかも

npm rebuild -g node-gyp

error C2373: '__pfnDliNotifyHook2'なんていうエラーが出たら

npm install -g npm@latest

を発行すると直るかも(参考

まとめ

Windowsでも上記手順でできることがわかった。
まぁWindows()でわざわざやることなくね?ということなんですけど。
おとなしくVirtualBoxでUbuntuでも入れた方が楽だろうし...