web-dev-qa-db-fra.com

Erreur lors de l'installation de angular-cli avec node-sass

Ma configuration système:
debian 4.4, nvm 0.33.8, node v8.9.4, npm 5.6.0.

Je veux installer Angular-cli npm install -g @angular/cli. Mais je reçois un message d'erreur:

root@contracts:/home/kalugin# npm install -g @angular/cli
/root/.nvm/versions/node/v8.9.4/bin/ng -> /root/.nvm/versions/node/v8.9.4/lib/node_modules/@angular/cli/bin/ng
> [email protected] install /root/.nvm/versions/node/v8.9.4/lib/node_modules/@angular/cli/node_modules/node-sass
> node scripts/install.js
module.js:471
  throw err;
  ^
Error: Cannot find module '/root/.nvm/versions/node/v8.9.4/lib/node_modules/@angular/cli/node_modules/node-sass/scripts/install.js'
  at Function.Module._resolveFilename (module.js:469:15)
  at Function.Module._load (module.js:417:25)
  at Module.runMain (module.js:604:10)
  at run (bootstrap_node.js:394:7)
  at startup (bootstrap_node.js:149:9)
  at bootstrap_node.js:509:3
> [email protected] postinstall /root/.nvm/versions/node/v8.9.4/lib/node_modules/@angular/cli/node_modules/webpack/node_modules/uglifyjs-webpack-plugin
> node lib/post_install.js
module.js:471
  throw err;
  ^
Error: Cannot find module '/root/.nvm/versions/node/v8.9.4/lib/node_modules/@angular/cli/node_modules/webpack/node_modules/uglifyjs-webpack-plugin/lib/post_install.js'
  at Function.Module._resolveFilename (module.js:469:15)
  at Function.Module._load (module.js:417:25)
  at Module.runMain (module.js:604:10)
  at run (bootstrap_node.js:394:7)
  at startup (bootstrap_node.js:149:9)
  at bootstrap_node.js:509:3
npm WARN optional SKIPPING OPTIONAL DEPENDENCY: [email protected] (node_modules/@angular/cli/node_modules/fsevents):
npm WARN notsup SKIPPING OPTIONAL DEPENDENCY: Unsupported platform for [email protected]: wanted {"os":"darwin","Arch":"any"} (current: {"os":"linux","Arch":"x64"})
npm WARN optional SKIPPING OPTIONAL DEPENDENCY: [email protected] (node_modules/@angular/cli/node_modules/node-sass):
npm WARN optional SKIPPING OPTIONAL DEPENDENCY: [email protected] install: `node scripts/install.js`
npm WARN optional SKIPPING OPTIONAL DEPENDENCY: Exit status 1
npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! [email protected] postinstall: `node lib/post_install.js`
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the [email protected] postinstall script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.
npm ERR! A complete log of this run can be found in:
npm ERR!     /root/.npm/_logs/2018-02-09T17_27_50_397Z-debug.log

J'ai essayé npm cache clean, ne aide pas.
J'ai essayé de changer la version du noeud nvm use v6.12.3, ça n'aide pas. 

debug.log a signalé le problème avec le package node-sass. J'ai essayé d'installer node-sass globalement - mais la même erreur. Je ne peux pas installer node-sass ...

Des idées?

3
kaluginserg

Le problème vient probablement du fait que vous exécutez en tant que root et que NPM désactive automatiquement les scripts lorsque vous le faites. Essayez de transmettre le --unsafe-perm à la commande d'installation de NPM.

7
nschonni

Essayez npm rebuild node-sass cela peut être pratique

2
MrThunder

En réalité, le problème est dû à l'utilisation de Sudo dans la commande car elle désactive les scripts. Essayez npm installer -g angular-cli sans Sudo, cela fonctionnera

0
Sourabh