node.js - node - No se pueden instalar módulos de nodo que requieren compilación en Windows 7 x64/VS2012
npm install (17)
- Instalar Python 2.7 (no 3.x)
- Agregue la ruta al directorio que contiene
vcbuild.exe
en su variable de entornoPATH
- Si necesita
vcbuild.exe
aquí https://github.com/kin9puppy/vcbuildFixForNode
No puedo instalar ninguno de los módulos que requieren compilación. Todos fallan con el siguiente error:
MSBUILD : error MSB3411: Could not load the Visual C++ component "VCBuild.exe". ...
Mi entorno:
- Windows 7 Enterprise x64, versión 6.1.7601
- nodo x86 0.8.16
- npm 1.2.0
- node-gyp 0.8.2
- Visual Studio 2012 y numerosos paquetes
Variables de entorno relacionadas:
Path=C:/Windows/system32;C:/Windows;C:/Windows/System32/Wbem;C:/Windows/System32/WindowsPowerShel l/v1.0;C:/Program Files/TortoiseGit/bin;C:/Program Files/Microsoft/Web Platform Installer/;C:/Program Files (x86)/Microsoft ASP.NET/ASP.NET Web Pages/v1.0/;C:/Program Files (x86)/Windows Kits/8.0/Windows Performance Toolkit/;C:/Program Files/Microsoft SQL Server/110/Tools/Binn/;c:/tools;c:/tools/node
No INCLUDE, LIB, LIBPATH, etc.
Hice una breve investigación del problema y me di cuenta de que con la siguiente configuración, la compilación manual (que llama directamente a VCBuild.exe y msbuild.exe) tiene éxito para el git: //github.com/einaros/ws.git clonado manualmente:
SET Configuration=Release
SET PATH=%ProgramFiles(x86)%/Microsoft Visual Studio 9.0/VC/vcpackages
SET PATH=%ProgramFiles(x86)%/Microsoft Visual Studio 11.0/VC/bin;%PATH%
SET PATH=%ProgramFiles(x86)%/Microsoft Visual Studio 11.0/Common7/IDE;%PATH%
SET PATH=%ProgramFiles(x86)%/Microsoft SDKs/Windows/v7.1A/Bin;%PATH%
SET PATH=%SystemRoot%/system32;%PATH%
SET INCLUDE=%ProgramFiles(x86)%/Microsoft Visual Studio 11.0/VC/include
SET INCLUDE=%ProgramFiles(x86)%/Microsoft SDKs/Windows/v7.1A/Include;%INCLUDE%
SET LIB=%ProgramFiles(x86)%/Microsoft SDKs/Windows/v7.1A/Lib
SET LIB=%ProgramFiles(x86)%/Microsoft Visual Studio 11.0/VC/lib;%LIB%
SET MSBUILD="%SystemRoot%/Microsoft.NET/Framework/v4.0.30319/msbuild.exe"
VCBuild.exe C:/Tools/node/ws/build/bufferutil.vcproj "Release|Win32" /useenv
VCBuild.exe C:/Tools/node/ws/build/validation.vcproj "Release|Win32" /useenv
%MSBUILD% build/binding.sln /verbosity:diagnostic /nologo /p:Configuration=Release;Platform=Win32
Intenté llamar a node-gyp con las mismas variables y falló:
C:/!> git clone https://github.com/einaros/ws.git
C:/!> cd ws
C:/!/ws>node-gyp configure
...
C:/!/ws>node-gyp build
gyp info it worked if it ends with ok
gyp info using [email protected]
gyp info using [email protected] | win32 | ia32
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=Win32'' ]
Building the projects in this solution one at a time. To enable parallel build, please add the "/m" switch.
C:/Users/User/.node-gyp/0.8.16/deps/uv/include/uv.h(55): fatal error C1083: Cannot open include file: ''stdint.h'': No such file or directory [C:/!/
ws/build/binding.sln]
C:/Users/User/.node-gyp/0.8.16/deps/uv/include/uv.h(55): fatal error C1083: Cannot open include file: ''stdint.h'': No such file or directory [C:/!/
ws/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:/Tools/node/node_modules/node-gyp/lib/build.js:255:23)
gyp ERR! stack at ChildProcess.EventEmitter.emit (events.js:99:17)
gyp ERR! stack at Process._handle.onexit (child_process.js:678:10)
gyp ERR! System Windows_NT 6.1.7601
gyp ERR! command "c://Tools//node////node.exe" "c://Tools//node//node_modules//node-gyp//bin//node-gyp.js" "build"
gyp ERR! cwd C:/!/ws
gyp ERR! node -v v0.8.16
gyp ERR! node-gyp -v v0.8.2
gyp ERR! not ok
Quizás tengas algunas ideas al respecto?
Gracias.
Actualizar v3: https://www.npmjs.com/package/windows-build-tools
Instalación de npm --global windows-build-tools
descarga e instala Visual C ++ Build Tools 2015, proporcionado gratuitamente por Microsoft. Estas herramientas son necesarias para compilar módulos nativos populares. También instalará Python 2.7, configurando su máquina y npm apropiadamente.
Actualizar v2:
node-gyp actualizó su archivo Léame para incluir HOW-TO para Windows
Original:
No es necesario todo el estudio visual, solo puedes descargar las herramientas de compilación
Microsoft Build Tools 2013: http://www.microsoft.com/en-us/download/details.aspx?id=40760
Ejecute cmd para establecer el indicador global para usar la versión 2013:
npm config set msvs_version 2013 --global
después de esto todo debería volver a la normalidad y tu reconstrucción de npm / node-gyp volverá a funcionar
Creo que la solución es descargar instalar Microsoft Windows SDK para el servidor 2008 con .NET Framework 3.5
o simplemente instale Visual Studio 2008 .
El problema es para las compilaciones de Windows node-gyp ejecuta el archivo vcbuid.exe, y por alguna razón no puede encontrarlo.
Gracias
Después de DÍAS de excavar, alguien en IRC sugirió que trate de usar el
Windows 7.1 SDK Command Prompt
Acceso directo (enlaces a C: / Windows / System32 / cmd.exe / E: ON / V: ON / T: 0E / K "C: / Archivos de programa / Microsoft SDKs / Windows / v7.1 / Bin / SetEnv.cmd" ) Creo que DEBES tener el anterior SDK 7.1 (incluso en Windows 8.1) porque los más nuevos usan msbuild.exe en lugar de vcbuild.exe, que es lo que node-gyp quiere aunque en este punto sea el doble de antiguo: /
Una vez en ese aviso, tuve que ejecutar lo siguiente para obtener el contexto x86 porque el compilador arrojaba como error lo contrario sobre la arquitectura:
setenv.cmd /Release /x86
LUEGO pude ejecutar con éxito comandos npm que intentaban usar node-gyp para recompilar cosas.
Después de una larga lucha, cambié la arquitectura de mi nodo a x86 y funcionó como un amuleto.
En Windows Esto me ayudó: (los créditos van a) https://github.com/TooTallNate/node-gyp/wiki/Updating-npm%27s-bundled-node-gyp Intenté MINGW32, pero sin éxito.
en cmd.exe
$ cd "C:/Program Files/nodejs/node_modules/npm"
$ npm install -g node-gyp@latest
Gracias a @felixrieseberg , solo necesitas instalar el paquete windows-build-tools npm y estás listo para empezar .
npm install --global --production windows-build-tools
No necesitarás instalar Visual Studio.
No necesitará instalar Microsoft Build Tools.
Del repositorio:
Después de la instalación, npm ejecutará automáticamente este módulo, que descarga e instala Visual C ++ Build Tools 2015, proporcionado gratuitamente por Microsoft. Estas herramientas son necesarias para compilar módulos nativos populares. También instalará Python 2.7, configurando su máquina y npm apropiadamente.
Windows Vista / 7 requiere .NET Framework 4.5.1 (actualmente no está instalado automáticamente por este paquete)
Ambas instalaciones están libres de conflictos, lo que significa que no se mezclan con las instalaciones existentes de Visual Studio, C ++ Build Tools o Python.
Para Windows 8 de 64 bits, instalando zmq y protobuf, lo siguiente funcionó para mí: Instalar Visual Studio 2012 en la línea de comandos:
SET VisualStudioVersion=11.0
npm install zmq
npm install protobuf
Para hacerlo sin la instalación de VS2010, y solo 2012, configure el indicador msvs_version:
node-gyp rebuild --msvs_version=2012
npm install <module> --msvs_version=2012
según el comentario de @Jacob
npm install --msvs_version=2013
si tienes la versión 2013
Pruébalo: lo configurará globalmente:
npm config set msvs_version 2012 --global
Resolví este problema en Windows 8 y Windows 10 Pro con este tutorial. Intento muchas veces resolver este problema con muchas soluciones diferentes, pero solo funcionó para mí con esto: http://www.serverpals.com/blog/building-using-node-gyp-with-visual-studio-express-2015-on-windows-10-pro-x64 Observé que no utilicé nodist para controlar la versión de nodo como este tutorial, uso NVM y funcionó bien, no pruebo este tutorial con nodist. Usé el nodo 5.2.0.
También tuve muchos problemas para compilar nodejs zmq.
Para el problema con vcbuild.exe, solo agrégalo a la RUTA
Para otros problemas, pude compilar solo usando Windows 7.1 SDK Command Prompt
(Programas de menú -> Microsoft Windows SDK v7.1 -> Símbolo del sistema de Windows 7.1 SDK)
Y desde el prompt:
npm install zmq
Eso es trabajos :)
Tuve el mismo problema al intentar instalar un paquete para Node.js. Después de algunos googeling extensos encontré este walktrough: https://github.com/TooTallNate/node-gyp/wiki/Visual-Studio-2010-Setup
Cuando había seguido estos pasos, podía usar "npm install" sin ningún problema.
Tuve la misma idea e hice toda la magia anterior, lo único que hizo la magia para mí es https://github.com/atom/atom/issues/2435
"Debido a que --msvs_version = 2013 no se pasa a node-gyp cuando es ejecutado por el script de compilación. Establezca la variable de env GYP_MSVS_VERSION = 2013 y debería funcionar después".
¡Explosión! funcionó
en Windows 8, funcionó para mí usando:
npm install -g node-gyp -msvs_version=2012
entonces
npm install -g restify
en cmd establece la ruta de Visual Studio según tu versión de ur
Visual Studio 2010 (VS10): SET VS90COMNTOOLS=%VS100COMNTOOLS%
Visual Studio 2012 (VS11): SET VS90COMNTOOLS=%VS110COMNTOOLS%
Visual Studio 2013 (VS12): SET VS90COMNTOOLS=%VS120COMNTOOLS%
En node-master (módulo de nodo original descargado de git) ejecute vcbuild.bat con privilegios de administrador. vcbild.bat generará dependencias relacionadas con Windows y agregará el nombre de la carpeta Release en node-master
Una vez que se ejecuta, llevará tiempo crear los archivos.
Luego, en el directorio que tiene el comando .gyp use el comando
node-gyp rebuild --msvs_version=2012 --nodedir="Dive Name:/path to node-master/node-master"
esto construirá todas las dependencias.
solo agrega --msvs_version = 2012
node-gyp rebuild --msvs_version=2012
o
node-gyp configure --msvs_version=2012
node-gyp build