Não consigo instalar nenhum dos módulos que exigem compilação. Todos eles falham com o seguinte erro:
MSBUILD : error MSB3411: Could not load the Visual C++ component "VCBuild.exe". ...
Meu ambiente:
- Windows 7 Enterprise x64, versão 6.1.7601
- nó x86 0.8.16
- npm 1.2.0
- node-gyp 0.8.2
- Visual Studio 2012 e vários pacotes
Variáveis de ambiente 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
Não inclui, LIB, LIBPATH, etc.
Fiz uma breve investigação do problema e descobri que, com a seguinte configuração, a compilação manual (chamando VCBuild.exe e msbuild.exe diretamente) é bem-sucedida no git clonado manualmente: //github.com/einaros/ws.git:
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
Eu tentei chamar node-gyp com as mesmas variáveis e falhou:
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 node-gyp@0.8.2
gyp info using node@0.8.16 | 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
Talvez você tenha algumas idéias sobre isso?
Obrigado.
node.js
visual-studio-2012
node-gyp
Alex Netkachov
fonte
fonte
vcvarsall.bat
vez de tentar configurar seu ambiente manualmente?Respostas:
Tente isso - definirá globalmente:
fonte
error MSB4019: The imported project "C:\Microsoft.Cpp.Default.props" was not found.
Para fazer isso sem a instalação do VS2010 e apenas 2012, defina o sinalizador msvs_version:
node-gyp rebuild --msvs_version=2012
npm install <module> --msvs_version=2012
como por @Jacob comentário
npm install --msvs_version=2013
se você tem a versão 2013fonte
npm install
comando fez funcionar para mim. Um traço funcionou para mim também.Atualização v3: https://www.npmjs.com/package/windows-build-tools
npm install --global windows-build-tools
Atualização v2:
node-gyp atualizou seu leia-me para incluir o HOW-TO for windows
Original:
Não há necessidade de todo o visual studio, você pode fazer o download apenas das ferramentas de criação
Ferramentas de compilação da Microsoft 2013: http://www.microsoft.com/en-us/download/details.aspx?id=40760
execute o cmd para definir o sinalizador global para usar a versão 2013:
npm config set msvs_version 2013 --global
Depois disso, tudo deve voltar ao normal e sua reconstrução npm install / node-gyp funcionará
fonte
npm config set msvs_version 2015 --global
que funciona bemnpm config set msvs_version 2015 --global
obrasbasta adicionar --msvs_version = 2012
ou
fonte
Eu tive o mesmo problema ao tentar instalar um pacote para Node.js. Depois de pesquisar bastante, encontrei este guia: https://github.com/TooTallNate/node-gyp/wiki/Visual-Studio-2010-Setup
Depois de seguir estas etapas, eu poderia usar o "npm install" sem problemas.
fonte
Graças ao @felixrieseberg , você só precisa instalar o pacote npm do windows-build-tools e pronto .
Você não precisará instalar o Visual Studio.
Você não precisará instalar o Microsoft Build Tools.
Do repositório:
fonte
no windows 8, funcionou para mim usando:
então
fonte
Depois de DAYS de escavação, alguém no IRC sugeriu que eu tentasse usar o
Atalho (links para C: \ Windows \ System32 \ cmd.exe / E: ON / V: ON / T: 0E / K "C: \ Arquivos de Programas \ Microsoft SDKs \ Windows \ v7.1 \ Bin \ SetEnv.cmd" ) Eu acho que você DEVE ter o SDK 7.1 mais antigo (mesmo no Windows 8.1) porque os mais novos usam o msbuild.exe em vez do vcbuild.exe, que é o que o node-gyp deseja, mesmo que seja duas vezes mais antigo que o nó neste momento: /
Uma vez nesse prompt, eu tive que executar o seguinte para obter o contexto x86 porque o compilador estava lançando como erro a arquitetura:
ENTÃO eu fui capaz de executar com êxito os comandos npm que estavam tentando usar o node-gyp para recompilar as coisas.
fonte
Eu tive a mesma isuee e fiz toda a mágica acima, a única coisa que fez a mágica para mim é de https://github.com/atom/atom/issues/2435
"Como a --msvs_version = 2013 não é passada para o node-gyp quando executada pelo script de construção. Defina a variável de ambiente GYP_MSVS_VERSION = 2013 e deverá funcionar depois."
Bang! funcionou
fonte
No Windows Isso me ajudou: (créditos: https://github.com/TooTallNate/node-gyp/wiki/Updating-npm%27s-bundled-node-gyp Tentei o MINGW32, mas sem sucesso.
em
cmd.exe
fonte
Para o Windows 8 de 64 bits, instalando o zmq e o protobuf, o seguinte funcionou para mim: Instale o Visual Studio 2012 Na linha de comando:
fonte
Eu acho que a solução é baixar instalar o Microsoft Windows SDK para o servidor 2008 com o .net framework 3.5
ou apenas instale o Visual studio 2008 .
O problema é que o Windows cria o node-gyp executa o arquivo vcbuid.exe e, por algum motivo, não o encontra.
obrigado
fonte
vcbuild.exe
sua variável de ambientePATH
vcbuild.exe
obtê-lo aqui https://github.com/kin9puppy/vcbuildFixForNodefonte
Também tive muitos problemas para compilar nodejs zmq.
Para o problema com vcbuild.exe, basta adicioná-lo ao PATH
Para outros problemas, eu poderia compilar usando apenas
Windows 7.1 SDK Command Prompt
(Programas do Menu -> Microsoft Windows SDK v7.1 -> Prompt de Comando do Windows 7.1 SDK)
E a partir do prompt:
npm install zmq
Isso funciona :)
fonte
Após uma longa luta, mudei minha arquitetura de nó para x86 e funcionou como um encanto.
fonte
no cmd, defina o caminho do Visual Studio dependendo da sua versão como
No node-master (módulo do nó original baixado do git), execute vcbuild.bat com privilégios de administrador. vcbild.bat irá gerar dependências relacionadas ao Windows e incluirá o nome da pasta Release no node-master
Uma vez executado, levará tempo para criar os arquivos.
Em seguida, no diretório que possui o arquivo .gyp, use o comando
isso criará todas as dependências.
fonte
Resolvi esse problema no Windows 8 e Windows 10 Pro com este tutorial. Eu tento várias vezes resolver esse problema com muitas soluções diferentes, mas só funcionou para mim com isso: http://www.serverpals.com/blog/building-using-node-gyp-with-visual-studio-express -2015-on-windows-10-pro-x64 Percebo que não usei o nodist para controlar a versão do nó como este tutorial, uso o NVM e funcionou bem, não testo este tutorial com o nodist. Eu usei o nó 5.2.0.
fonte