Ошибка Yeoman/NPM: сбой node-gyp

Я пробую Yeoman, но продолжаю застревать, когда запускаю команду «yo meanjs», она задает мне пару вопросов, а затем говорит, что работает npm install. Дайте ему пару минут, и он выдает следующие ошибки.

Все это прекрасно работает на моем собственном компьютере, но на моем рабочем ноутбуке (на котором я являюсь администратором) я получаю все эти ошибки. Вот установленные модули и VS (для MSBuild).

Установщики

  • Visual Studio 2013 Профессиональная
  • Питон 2.7.10
  • Руби 2.2.3p173
  • узел версии 4.2.1

Модули

  • нпм версии 3.3.8
  • твоя версия 1.4.8
  • узел-gyp 3.0.3

Я искал в Интернете, но большая часть информации, которую я могу найти о подобных ошибках, говорит, что нужно попробовать.

установка npm --msvs_version=2013

Или установить путь python, который не имеет значения.

npm http 304 https://registry.npmjs.org/cookiejar
npm http 304 https://registry.npmjs.org/reduce-component
npm http 304 https://registry.npmjs.org/formidable
npm http 304 https://registry.npmjs.org/extend
npm http 304 https://registry.npmjs.org/methods
npm http 304 https://registry.npmjs.org/readable-stream
npm http request GET https://registry.npmjs.org/async
npm http request GET https://registry.npmjs.org/mime-types
npm http 304 https://registry.npmjs.org/mime-types
npm http 304 https://registry.npmjs.org/async
npm http request GET https://registry.npmjs.org/mime-db
npm http 304 https://registry.npmjs.org/mime-db
npm WARN prefer global [email protected] should be installed with -g
npm WARN prefer global [email protected] should be installed with -g
npm WARN prefer global [email protected] should be installed with -g
npm WARN prefer global [email protected] should be installed with -g
gyp ERR! build error
gyp ERR! stack Error: `msbuild` failed with exit code: 1
gyp ERR! stack     at ChildProcess.onExit (C:\Users\graemm05\AppData\Roaming\npm\node_modules\npm\node_modules\node-gyp\lib\build.js:270:23)
gyp ERR! stack     at emitTwo (events.js:87:13)
gyp ERR! stack     at ChildProcess.emit (events.js:172:7)
gyp ERR! stack     at Process.ChildProcess._handle.onexit (internal/child_process.js:200:12)
gyp ERR! System Windows_NT 6.1.7601
gyp ERR! command "C:\\Program Files\\nodejs\\node.exe" "C:\\Users\\graemm05\\AppData\\Roaming\\npm\\node_modules\\npm\\node_modules\\node-gyp\\bin\\node-gyp.js" "rebuild"
gyp ERR! cwd C:\NodeWebsites\ServerStatus2\node_modules\kerberos
gyp ERR! node -v v4.2.1
gyp ERR! node-gyp -v v3.0.3
gyp ERR! not ok
gyp ERR! build error
gyp ERR! stack Error: `msbuild` failed with exit code: 1
gyp ERR! stack     at ChildProcess.onExit (C:\Users\graemm05\AppData\Roaming\npm\node_modules\npm\node_modules\node-gyp\lib\build.js:270:23)
gyp ERR! stack     at emitTwo (events.js:87:13)
gyp ERR! stack     at ChildProcess.emit (events.js:172:7)
gyp ERR! stack     at Process.ChildProcess._handle.onexit (internal/child_process.js:200:12)
gyp ERR! System Windows_NT 6.1.7601
gyp ERR! command "C:\\Program Files\\nodejs\\node.exe" "C:\\Users\\graemm05\\AppData\\Roaming\\npm\\node_modules\\npm\\node_modules\\node-gyp\\bin\\node-gyp.js" "rebuild"
gyp ERR! cwd C:\NodeWebsites\ServerStatus2\node_modules\bufferutil
gyp ERR! node -v v4.2.1
gyp ERR! node-gyp -v v3.0.3
gyp ERR! not ok
npm WARN install:[email protected] [email protected] install: `node-gyp rebuild`
npm WARN install:[email protected] Exit status 1
gyp ERR! build error
gyp ERR! stack Error: `msbuild` failed with exit code: 1
gyp ERR! stack     at ChildProcess.onExit (C:\Users\graemm05\AppData\Roaming\npm\node_modules\npm\node_modules\node-gyp\lib\build.js:270:23)
gyp ERR! stack     at emitTwo (events.js:87:13)
gyp ERR! stack     at ChildProcess.emit (events.js:172:7)
gyp ERR! stack     at Process.ChildProcess._handle.onexit (internal/child_process.js:200:12)
gyp ERR! System Windows_NT 6.1.7601
gyp ERR! command "C:\\Program Files\\nodejs\\node.exe" "C:\\Users\\graemm05\\AppData\\Roaming\\npm\\node_modules\\npm\\node_modules\\node-gyp\\bin\\node-gyp.js" "rebuild"
gyp ERR! cwd C:\NodeWebsites\ServerStatus2\node_modules\node-inspector\node_modules\bufferutil
gyp ERR! node -v v4.2.1
gyp ERR! node-gyp -v v3.0.3
gyp ERR! not ok
npm WARN install:[email protected] [email protected] install: `node-gyp rebuild`
npm WARN install:[email protected] Exit status 1
gyp ERR! build error
gyp ERR! stack Error: `msbuild` failed with exit code: 1
gyp ERR! stack     at ChildProcess.onExit (C:\Users\graemm05\AppData\Roaming\npm\node_modules\npm\node_modules\node-gyp\lib\build.js:270:23)
gyp ERR! stack     at emitTwo (events.js:87:13)
gyp ERR! stack     at ChildProcess.emit (events.js:172:7)
gyp ERR! stack     at Process.ChildProcess._handle.onexit (internal/child_process.js:200:12)
gyp ERR! System Windows_NT 6.1.7601
gyp ERR! command "C:\\Program Files\\nodejs\\node.exe" "C:\\Users\\graemm05\\AppData\\Roaming\\npm\\node_modules\\npm\\node_modules\\node-gyp\\bin\\node-gyp.js" "rebuild"
gyp ERR! cwd C:\NodeWebsites\ServerStatus2\node_modules\node-inspector\node_modules\utf-8-validate
gyp ERR! node -v v4.2.1
gyp ERR! node-gyp -v v3.0.3
gyp ERR! not ok
npm WARN install:[email protected] [email protected] install: `node-gyp rebuild`
npm WARN install:[email protected] Exit status 1
gyp ERR! build error
gyp ERR! stack Error: `msbuild` failed with exit code: 1
gyp ERR! stack     at ChildProcess.onExit (C:\Users\graemm05\AppData\Roaming\npm\node_modules\npm\node_modules\node-gyp\lib\build.js:270:23)
gyp ERR! stack     at emitTwo (events.js:87:13)
gyp ERR! stack     at ChildProcess.emit (events.js:172:7)
gyp ERR! stack     at Process.ChildProcess._handle.onexit (internal/child_process.js:200:12)
gyp ERR! System Windows_NT 6.1.7601
gyp ERR! command "C:\\Program Files\\nodejs\\node.exe" "C:\\Users\\graemm05\\AppData\\Roaming\\npm\\node_modules\\npm\\node_modules\\node-gyp\\bin\\node-gyp.js" "rebuild"
gyp ERR! cwd C:\NodeWebsites\ServerStatus2\node_modules\utf-8-validate
gyp ERR! node -v v4.2.1
gyp ERR! node-gyp -v v3.0.3
gyp ERR! not ok
npm WARN install:[email protected] [email protected] install: `node-gyp rebuild`
npm WARN install:[email protected] Exit status 1
node-pre-gyp http GET https://node-inspector.s3.amazonaws.com/debug/v0.4.6/node-v46-win32-ia32.tar.gz
node-pre-gyp http 404 https://node-inspector.s3.amazonaws.com/debug/v0.4.6/node-v46-win32-ia32.tar.gz
node-pre-gyp http Pre-built binary not available for your system, looked for https://node-inspector.s3.amazonaws.com/debug/v0.4.6/node-v46-win32-ia32.tar.gz (falling back to source compile with node-gyp)
gyp ERR! build error
gyp ERR! stack Error: `msbuild` failed with exit code: 1
gyp ERR! stack     at ChildProcess.onExit (C:\NodeWebsites\ServerStatus2\node_modules\node-gyp\lib\build.js:270:23)
gyp ERR! stack     at emitTwo (events.js:87:13)
gyp ERR! stack     at ChildProcess.emit (events.js:172:7)
gyp ERR! stack     at Process.ChildProcess._handle.onexit (internal/child_process.js:200:12)
gyp ERR! System Windows_NT 6.1.7601
gyp ERR! command "C:\\Program Files\\nodejs\\node.exe" "C:\\NodeWebsites\\ServerStatus2\\node_modules\\node-gyp\\bin\\node-gyp.js" "build" "--fallback-to-build" "--module=C:\\NodeWebsites\\ServerStatus2\\node_modules\\v8-debug\\build\\debug\\v0.4.6\\node-v46-win32-ia32\\debug.node" "--module_name=debug" "--module_path=C:\\NodeWebsites\\ServerStatus2\\node_modules\\v8-debug\\build\\debug\\v0.4.6\\node-v46-win32-ia32"
gyp ERR! cwd C:\NodeWebsites\ServerStatus2\node_modules\v8-debug
gyp ERR! node -v v4.2.1
gyp ERR! node-gyp -v v3.0.3
gyp ERR! not ok
node-pre-gyp ERR! build error
node-pre-gyp ERR! stack Error: Failed to execute 'C:\Program Files\nodejs\node.exe C:\NodeWebsites\ServerStatus2\node_modules\node-gyp\bin\node-gyp.js build --fallback-to-build --module=C:\NodeWebsites\ServerStatus2\node_modules\v8-debug\build\debug\v0.4.6\node-v46-win32-ia32\debug.node --module_name=debug --module_path=C:\NodeWebsites\ServerStatus2\node_modules\v8-debug\build\debug\v0.4.6\node-v46-win32-ia32' (1)
node-pre-gyp ERR! stack     at ChildProcess.<anonymous> (C:\NodeWebsites\ServerStatus2\node_modules\v8-debug\node_modules\node-pre-gyp\lib\util\compile.js:83:29)
node-pre-gyp ERR! stack     at emitTwo (events.js:87:13)
node-pre-gyp ERR! stack     at ChildProcess.emit (events.js:172:7)
node-pre-gyp ERR! stack     at maybeClose (internal/child_process.js:818:16)
node-pre-gyp ERR! stack     at Process.ChildProcess._handle.onexit (internal/child_process.js:211:5)
node-pre-gyp ERR! System Windows_NT 6.1.7601
node-pre-gyp ERR! command "C:\\Program Files\\nodejs\\node.exe" "C:\\NodeWebsites\\ServerStatus2\\node_modules\\v8-debug\\node_modules\\node-pre-gyp\\bin\\node-pre-gyp" "install" "--fallback-to-build"
node-pre-gyp ERR! cwd C:\NodeWebsites\ServerStatus2\node_modules\v8-debug
node-pre-gyp ERR! node -v v4.2.1
node-pre-gyp ERR! node-pre-gyp -v v0.6.13
node-pre-gyp ERR! not ok
npm WARN EPACKAGEJSON [email protected] No repository field.
npm ERR! Windows_NT 6.1.7601
npm ERR! argv "C:\\Program Files\\nodejs\\node.exe" "C:\\Users\\graemm05\\AppData\\Roaming\\npm\\node_modules\\npm\\bin\\npm-cli.js" "install"
npm ERR! node v4.2.1
npm ERR! npm  v3.3.8
npm ERR! code ELIFECYCLE

npm ERR! [email protected] install: `node-pre-gyp install --fallback-to-build`
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the [email protected] install script 'node-pre-gyp install --fallback-to-build'.
npm ERR! This is most likely a problem with the v8-debug package,
npm ERR! not with npm itself.
npm ERR! Tell the author that this fails on your system:
npm ERR!     node-pre-gyp install --fallback-to-build
npm ERR! You can get their info via:
npm ERR!     npm owner ls v8-debug
npm ERR! There is likely additional logging output above.

npm ERR! Please include the following file with any support request:
npm ERR!     C:\NodeWebsites\ServerStatus2\npm-debug.log

    at ChildProcess.exithandler (child_process.js:203:12)
    at emitTwo (events.js:87:13)
    at ChildProcess.emit (events.js:172:7)
    at maybeClose (internal/child_process.js:818:16)
    at Process.ChildProcess._handle.onexit (internal/child_process.js:211:5)

Вот файл package.json, созданный командой yo meanjs:

{
  "name": "mean",
  "description": "Full-Stack JavaScript with MongoDB, Express, AngularJS, and Node.js",
  "version": "0.0.0",
  "meanjs-version": "0.4.0",
  "author": "",
  "license": "MIT",
  "engines": {
    "node": ">=0.10.28",
    "npm": ">=1.4.28"
  },
  "scripts": {
    "start": "grunt",
    "test": "grunt test",
    "postinstall": "bower install --config.interactive=false"
  },
  "dependencies": {
    "acl": "~0.4.4",
    "async": "^1.3.0",
    "body-parser": "^1.13.1",
    "bower": "^1.4.1",
    "chalk": "^1.1.0",
    "compression": "^1.5.0",
    "connect-flash": "~0.1.1",
    "connect-mongo": "~0.8.1",
    "consolidate": "~0.13.1",
    "cookie-parser": "^1.3.2",
    "express": "^4.13.1",
    "express-session": "^1.11.3",
    "forever": "~0.14.2",
    "glob": "^5.0.13",
    "grunt-cli": "~0.1.13",
    "grunt": "0.4.5",
    "helmet": "~0.9.1",
    "jasmine-core": "^2.3.4",
    "lodash": "^3.10.0",
    "method-override": "^2.3.3",
    "mocha": "~1.20.0",
    "mongoose": "^4.0.6",
    "morgan": "^1.6.1",
    "multer": "0.1.8",
    "node-pre-gyp": "0.6.4",
    "nodemailer": "^1.4.0",
    "passport": "~0.2.2",
    "passport-facebook": "^2.0.0",
    "passport-github": "~0.1.5",
    "passport-google-oauth": "~0.2.0",
    "passport-linkedin": "~0.1.3",
    "passport-local": "^1.0.0",
    "passport-paypal-openidconnect": "^0.1.1",
    "passport-twitter": "^1.0.2",
    "phantomjs": ">=1.9.0",
    "serve-favicon": "^2.3.0",
    "socket.io": "^1.3.5",
    "swig": "^1.4.2",
    "validator": "^3.41.2"
  },
  "devDependencies": {
    "grunt-concurrent": "^2.0.0",
    "grunt-contrib-copy": "~0.8.0",
    "grunt-contrib-csslint": "~0.4.0",
    "grunt-contrib-cssmin": "~0.12.3",
    "grunt-contrib-jshint": "~0.11.2",
    "grunt-contrib-less": "^1.0.1",
    "grunt-contrib-sass": "~0.9.2",
    "grunt-contrib-uglify": "~0.9.1",
    "grunt-contrib-watch": "~0.6.1",
    "grunt-env": "~0.4.4",
    "grunt-karma": "~0.11.2",
    "grunt-mocha-test": "~0.12.7",
    "grunt-ng-annotate": "^1.0.1",
    "grunt-node-inspector": "~0.2.0",
    "grunt-nodemon": "~0.4.0",
    "grunt-protractor-runner": "^2.0.0",
    "gulp": "^3.9.0",
    "gulp-concat": "^2.6.0",
    "gulp-csslint": "~0.1.5",
    "gulp-cssmin": "~0.1.7",
    "gulp-jshint": "^1.11.2",
    "gulp-karma": "~0.0.4",
    "gulp-less": "^3.0.3",
    "gulp-livereload": "^3.8.0",
    "gulp-load-plugins": "^1.0.0-rc.1",
    "gulp-mocha": "^2.1.2",
    "gulp-ng-annotate": "^1.0.0",
    "gulp-nodemon": "^2.0.3",
    "gulp-protractor": "^1.0.0",
    "gulp-rename": "^1.2.2",
    "gulp-sass": "^2.0.3",
    "gulp-uglify": "^1.2.0",
    "karma": "~0.12.37",
    "karma-chrome-launcher": "~0.2.0",
    "karma-coverage": "~0.4.2",
    "karma-firefox-launcher": "~0.1.6",
    "karma-jasmine": "~0.3.6",
    "karma-ng-html2js-preprocessor": "^0.1.2",
    "karma-phantomjs-launcher": "~0.2.0",
    "load-grunt-tasks": "^3.2.0",
    "run-sequence": "^1.1.1",
    "should": "^7.0.1",
    "supertest": "^1.0.1"
  }
}

Итак, вот небольшое обновление

Сообщения журнала, которые я включил, были неполными и содержали некоторые другие ошибки, в которых указывался путь к MSBuild. Похоже, он использовал неправильный путь, поэтому я нашел правильный путь и использовал следующую команду.

set VCTargetsPath=C:\Program Files\MSBuild\Microsoft.Cpp\v4.0\V120

Он пытался получить доступ к C:\Program Files\MSBuild\Microsoft.Cpp\v4.0\V110.

Кому-то может помочь, но я все еще получаю другие ошибки.


Похоже, что grunt-node-spector@~0.2.0 не любит компилировать с помощью node-gyp. Я нашел файл package.json для генератора meanjs и смог обновить его до grunt-node-spector@*, теперь он работает правильно! После некоторых споров с mongodb у меня теперь все работает.

Пробовал вспомогательный генератор для модулей crud, который, похоже, не работает, но я думаю, что мне нужно будет перейти на более раннюю версию, поскольку я не думаю, что генератор обновлен.


Реми Бехерас назвал это возможным дубликатом Ошибка установки NPM - Node-Pre-Gyp< /а>

Я просмотрел в Google все ответы, которые смог найти, включая этот. Однако отсутствие контекста в исходном сообщении заставило меня опубликовать свой собственный вопрос.

Например, в конце концов проблема заключалась в том, что Йоман запросил версию NodeInspector, которую node-gyp не может (по какой-то причине) скомпилировать.


person Dwiea    schedule 16.10.2015    source источник
comment
Эта проблема связана с обновлением Node 4. У них было много проблем с нативными модулями. Не уверен, как вы можете решить, но вам, вероятно, следует поискать списки ошибок узла по этому поводу.   -  person Simon Boudrias    schedule 16.10.2015
comment
Будет ли работать установка более старой версии узла с nvmw?   -  person Dwiea    schedule 17.10.2015
comment
да это может стоить. Попробуйте с узлом 0.12   -  person Simon Boudrias    schedule 17.10.2015
comment
С 0.12 тоже не работал :(   -  person Dwiea    schedule 19.10.2015
comment
Обновлен исходный вопрос с дополнительной информацией   -  person Dwiea    schedule 19.10.2015
comment
И еще одно обновление :)   -  person Dwiea    schedule 20.10.2015
comment
Возможный дубликат Ошибка установки NPM — Node-Pre-Gyp   -  person Rémi Becheras    schedule 28.10.2015
comment
Я пробовал это с node 4.2.1 и generator-angular-fullstack, и у меня не получилось на npm install. Я отредактировал package.json так, чтобы он указывал с grunt-node-inspector@~0.1.5 на grunt-node-inspector@*, и это позволило ему работать правильно, так что спасибо!   -  person Umar Farooq Khawaja    schedule 29.10.2015
comment
Хоть кому-то помогло :D   -  person Dwiea    schedule 30.10.2015
comment
Отредактированный оригинальный пост Rémi Becheras   -  person Dwiea    schedule 30.10.2015


Ответы (1)


Перейдите в «Программы и компоненты», выберите «Изменить» в Visual Studio. Убедитесь, что у вас установлены Common Tools for Visual C++. Также убедитесь, что у вас есть 32-битная или 64-битная версия всего (Nodejs, python, MSBuild).

person KnuturO    schedule 11.07.2016