X64 OSでこれまでに行ったことは次のとおりです。
Node-gyp configureが正常に実行されました(binding.gypがあるnodejs\node_modulesの下のアドオンディレクトリから)
node-gyp build(管理者として)を実行しました**
このエラー:
C:\Program Files\nodejs\node_modules\msnodesql>node-gyp build
gyp info it worked if it ends with ok
gyp info using [email protected]
gyp info using [email protected] | win32 | x64
gyp info spawn C:\Windows\Microsoft.NET\Framework\v4.0.30319\msbuild.exe
gyp info spawn args [ 'build/binding.sln',
gyp info spawn args '/clp:Verbosity=minimal',
gyp info spawn args '/nologo',
gyp info spawn args '/p:Configuration=Release;Platform=x64' ]
Building the projects in this solution one at a time. To enable parallel build, please add the "/m" switch.
リンク:致命的なエラーLNK1181:入力ファイル 'kernel32.lib'を開けません[C:\ Program Files\nodejs\node_modules\msnodesql\build\sqlserver.vcxproj]
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:\Users\RNelson\AppData\Roaming\npm\node_modules\node-gyp\lib\build.js:267:23)
gyp ERR! stack at ChildProcess.EventEmitter.emit (events.js:98:17)
gyp ERR! stack at Process.ChildProcess._handle.onexit (child_process.js:797:12)
gyp ERR! System Windows_NT 6.1.7601
gyp ERR! command "node" "C:\\Users\\RNelson\\AppData\\Roaming\\npm\\node_modules\\node- gyp\\bin\\node-gyp.js" "build"
gyp ERR! cwd C:\Program Files\nodejs\node_modules\msnodesql
gyp ERR! node -v v0.10.25
gyp ERR! node-gyp -v v0.12.2
gyp ERR! not ok
何が起こっているかについてのアイデアはありますか?前もって感謝します! Node.jsでnode-sqlserver MSドライバーを使用しようとしています
npm config set msvs_version 2013 --global
はVSノードツールを使用し、npmインストールを実行するたびにmsvs_versionを指定する必要がないため、私のために機能しました。
Npmの構成(c:\ Users\username\.npmrc)にmsvs_version = 2012というエントリがあり、古いという問題がありました。
同様の問題がありました。このスイッチが私を助けてくれたことがわかりました
--msvs_version=2012
例えば
npm install --msvs_version=2012 <package>
これを機能させるためにしばらく時間を費やした後(私にとって受け入れられた答えは機能しませんでした、私にとっては半分の解決策です)、私は次のことをしました:
悲しいことに、あなたはビジュアルスタジオを持っている必要があります(デスクトップ用のExpress Edition 2013をインストールしました)
python 2.7.3をインストールしました(環境変数を設定する必要はありません)
管理者としてcmdを実行し、プロジェクトルートに移動します(package.jsonファイルの場所)
最初の実行:npm config set python C:\Python27\python.exe
次に:npm install -msvs_version=2013
トリックはコマンドnpm config set python ...path_to_python_exe...
にあり、npmがpythonを必要とする依存関係に提供します。 pythonをenv変数として設定するだけでは不十分な理由はわかりません。
上記のすべてが機能しなかった場合(私の場合-Windows10 64bit)
削除C:\ Users\user_name\.node-gyp
削除%AppData%/ npm
削除%AppData%/ npm-cache
そして、node-gypを再度インストールします
node-gyp page の指示に従います
オプション1を選択しましたnpm install --global --production windows-build-tools
Node-gypをWindowsまたはその他のOSにインストールするため
最初に、node-gypをダウンロードする必要がある場合があります
$ npm install -g node-gyp-install
次にインストールする
$ npm install -g node-gyp
上記の手順をroot/administrartorとして実行する必要がある場合があります。
Keystoneをインストールしようとしたときに2015年に同じエラーが発生しました。あなたが言ったすべてを実行しましたが、それだけでは機能しませんでした。最後に、コマンドを実行する必要がありました
"C:\Program Files\Microsoft SDKs\Windows\v7.1\bin\SetEnv.CMD" /Release /x64
コマンドを実行する前に環境をセットアップします。 (ウィンドウのテキストが緑色に変わっても大丈夫です、動作しています)。インターネットのどこでも同じようにインストールを行い、環境変数を設定しますが、他のコマンドを実行する前に上記のコマンドを実行してください。それはおそらくあなたには役に立たないでしょうが、うまくいけば他の誰かに役立っています。それでも機能しない場合は、MSVSバージョン2010が機能したので、そのバージョンをインストールし、npmコマンドの実行時にフラグ-msvs_version = 2010を使用します。
自分でこの問題に遭遇しましたが、これがVisual Studio 2010を使用して解決した方法です。
以下のパッケージをインストールします
Windows SDKコマンドプロンプトからnpm install
を使用します(追加の環境変数を設定するため、これが必要です)。
ソース: VS2010のnode-gyp命令
私(Windows 7 64ビット)の場合、
私はこの問題に半日苦労しました。ついにうまくいきました。
途中で:
コントロールパネルで、すべてのPython、Microsoft Visual Studio、Microsoft Redistributable、およびこれを解決するためにインストールしたものをすべて削除しました。
ウィンドウの更新と再起動。
インストール済み Python27 および Visual Studio 201設定なしenv-val
npm install node-gyp -g
npm config set msvs_version 2013 --global
の後、動作します。私にとって、VS Expressと連携したソリューションは、デスクトップ用のVisual Studio 2013 Expressをインストールすることでした(これは、2013バージョンの時点で開発者コマンドプロンプトを提供する唯一のものです)。 開発者コマンドプロンプト(昇格)を開き、NPMインストールコマンドを実行します。これは特別な--msvs_version
引数を必要としませんでした。
使いやすい windows build tools グローバルノードパッケージがあります。これを試すことができます。