web-dev-qa-db-fra.com

Impossible d'installer npm en raison de node-gyp: binding.gyp introuvable

J'ai travaillé dessus toute la journée et j'ai essayé beaucoup de choses différentes:

  • Désinstallation du nœud et installation de la dernière version
  • En utilisant le --msvs_version= indicateur défini sur 2010, 2011, 2012, 2013, 2015
  • Suppression du dossier .node-gyp
  • Ajout de python chemin vers .npmrc comme ceci: python=C:\Python27\python.exe
  • npm -g install npm@next
  • Fonctionnement node-gyp rebuild et node-gyp configure
  • Suivant le guide de Robert Kehoe

Des moments difficiles.

Le package est une application Electron/React et j'utilise Windows 10. Sortie console pour npm install est

C:\Program Files (x86)\MSBuild\Microsoft.Cpp\v4.0\Platforms\x64\Microsoft.Cpp.x64.Targets(514,5): error MSB8008: Specif
ied platform toolset (v120) is not installed or invalid. Please make sure that a supported PlatformToolset value is sel
ected. [C:\Users\scheinerbock\Desktop\mpstudio\node_modules\mplib\build\addon.vcxproj]
gyp ERR! build error
gyp ERR! stack Error: `msbuild` failed with exit code: 1
gyp ERR! stack     at ChildProcess.onExit (C:\Users\scheinerbock\AppData\Roaming\npm\node_modules\npm\node_modules\node-gyp\lib\build.js:276:23)
gyp ERR! stack     at emitTwo (events.js:106:13)
gyp ERR! stack     at ChildProcess.emit (events.js:191:7)
gyp ERR! stack     at Process.ChildProcess._handle.onexit (internal/child_process.js:215:12)
gyp ERR! System Windows_NT 10.0.14393
gyp ERR! command "C:\\Program Files\\nodejs\\node.exe" "C:\\Users\\scheinerbock\\AppData\\Roaming\\npm\\node_modules\\npm\\node_modules\\node-gyp\\bin\\node-gyp.js" "rebuild"
gyp ERR! cwd C:\Users\scheinerbock\Desktop\mpstudio\node_modules\mplib
gyp ERR! node -v v6.10.0
gyp ERR! node-gyp -v v3.5.0
gyp ERR! not ok

Et pour node-gyp rebuild:

gyp: binding.gyp introuvable (cwd: C:\Users\scheinerbock\Desktop\mpstudio) lors de la tentative de chargement de binding.gyp

Je suis bien sorti de ma timonerie ici et j'apprécierais toutes suggestions ou informations en plus des solutions.

8
Ben S

Voir ce fil , peut-être que cela aide.

node-gyp utilise Visual Studio pour construire sur Windows, donc je suppose que le problème vient de votre installation VS.

À en juger par ce chemin (C:\Program Files (x86)\MSBuild), il semble qu'il nécessite une version plus récente (peut-être Visual Studio 2015 où MSBuild a été introduit pour la première fois).

2
mihai

créez un fichier binding.gyp et placez-le dans la racine de votre projet. le contenu du fichier ressemble à ceci:

{
  "targets": [
    {
      "target_name": "binding",
      "sources": [ "src/binding.cc" ]
    }
  ]
}

UNE binding.gyp le fichier décrit la configuration pour construire votre module, dans un format de type JSON. Ce fichier est placé à la racine de votre package, à côté de package.json. voir ici: https://github.com/nodejs/node-gyp#the-bindinggyp-file

0
Reagan Ochora

Assurez-vous que vous avez python 2.x version installée et non 3.x Pour moi, cela a fonctionné après avoir installé python 2.6

0
user1416932

Utilisez la commande suivante. Ça a marché pour moi. Pour gagner 10, cela fonctionne bien:

npm install --msvs_version=2013
0
Sandip Jadhav