with tools nodejs node failed code windows-7-x64 node-gyp node-sqlserver

windows-7-x64 - tools - npm gyp failed with exit code 1



node-gyp build error windows x64 (9)

Después de pasar un tiempo para que esto funcione (para mí, la respuesta aceptada no funcionó, para mí es solo la mitad de la solución) lo seguí:

  1. Tristemente, debes tener Visual Studio (instalé la edición express 2013 para DESKTOP)

  2. Python 2.7.3 instalado (no es necesario configurar variables de entorno)

  3. Ejecute cmd como administrador y vaya a la raíz del proyecto (¿dónde está el archivo package.json?)

  4. Primera ejecución: npm config set python C:/Python27/python.exe

  5. Entonces: npm install -msvs_version=2013

El truco está en el comando npm config set python ...path_to_python_exe... que será proporcionado por npm a la dependencia que necesita python, supongo. No sé por qué configurar python como variable env no es suficiente.

Esto es lo que he hecho hasta ahora en mi sistema operativo x64:

  • Se instaló Python (v2.7 --específicamente 2.7.6) y lo agregué a la ruta del sistema (C: / Python27)
  • Versión MS VS C ++ 2010 Express instalada (ya tenía VS 2012 pero sin el componente C ++)
  • Instalado la actualización del compilador para Windows SDK 7.1
  • Se ha ejecutado correctamente la configuración node-gyp (desde mi directorio add-on en nodejs / node_modules donde se encuentra binding.gyp)

  • ejecutó la compilación node-gyp (como administrador) ** Esto es lo que se colgó, dejándome con:

este error:

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.

LINK: error fatal LNK1181: no se puede abrir el archivo de entrada ''kernel32.lib'' [C: / Archivos de programa / 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

¿Alguna idea sobre lo que esta pasando? ¡Gracias por adelantado! Solo estoy tratando de usar mi controlador MS de node-sqlserver para Node.js


Me encontré con este problema yo mismo, y así es como lo resolví con Visual Studio 2010:

Instalar los siguientes paquetes

Use npm install desde el símbolo del sistema de Windows SDK (lo necesita porque establece variables de entorno adicionales).

Fuente: instrucciones node-gyp para VS2010


Para instalar node-gyp en Windows o cualquier otro sistema operativo

Primero es posible que deba descargar el nodo-gyp por

$ npm install -g node-gyp-install

Luego instale por

$ npm install -g node-gyp

Es posible que deba realizar el procedimiento anterior como administrador / raíz.


Para mí (Windows 7 64bit),

Luché con este tema durante la mitad del día. Finalmente funcionó.

En mi camino :

  1. En el panel de control, borré todo Python, Microsoft Visual Studio, Microsoft Redistributable y algo sobre lo que instalé para resolver esto.

  2. Ventana de actualización y reinicio.

  3. Python27 instalado y Visual Studio 2013 sin configuración env-val

  4. npm install node-gyp -g

  5. Tengo el mismo error, pero después de npm config set msvs_version 2013 --global , Funciona.

Para mí, la solución que funcionaba con VS Express era simplemente instalar Visual Studio 2013 Express para escritorio (que es el único que le da un símbolo del sistema del desarrollador a partir de la versión 2013). Abra el símbolo del sistema del desarrollador (elevado) y ejecute los comandos de instalación de NPM. Esto no requirió ningún argumento especial --msvs_version , simplemente funcionó.


Si todo lo anterior no funcionó (mi caso - Windows10 de 64 bits )

Eliminar C: / Users / user_name / .node-gyp

Eliminar % AppData% / npm

Eliminar % AppData% / npm-cache

E instalar node-gyp nuevamente

Siguiendo instrucciones en la página node-gyp

Elegí la opción 1 npm install --global --production windows-build-tools


Tuve el mismo error ahora en 2015 al intentar instalar Keystone y revisé todo lo que me contó, pero no funcionó por sí mismo. Al final, solo tuve que ejecutar el comando

"C:/Program Files/Microsoft SDKs/Windows/v7.1/bin/SetEnv.CMD" /Release /x64

para configurar el entorno antes de ejecutar el comando. (No se asuste cuando el texto de su ventana se ponga verde, está funcionando). Así que sí, haría las instalaciones y configuraría las variables de entorno de la misma manera en todas partes en Internet, pero me aseguro de ejecutar el comando anterior antes de ejecutar cualquier otro comando. Probablemente no sea útil para ti, pero con suerte será útil para otra persona. Si eso todavía no funciona, la versión 2010 de MSVS me funcionó, así que instale esa versión y use el indicador -msvs_version = 2010 cuando ejecute el comando npm.


Tuve un problema similar. Descubrí que este cambio me ayudó

--msvs_version=2012

así por ejemplo

npm install --msvs_version=2012 <package>


npm config set msvs_version 2013 --global funcionó para mí ya que utilizo las herramientas del nodo VS y no necesita especificar msvs_version cada vez que hace una instalación npm.

Tuve un problema por el cual la configuración de npm (c: / Users / username / .npmrc) tiene una entrada msvs_version = 2012 que estaba desactualizada.