Tente reinstalar o `node-sass` no nó 0.12?

263

Eu gostaria de usar o kit inicial do google web. Eu instalei o node.js v0.12.0, node-sass& gulp.

E então correu:

$ sudo npm install

Quando digitei gulp serve, recebi este erro:

Using gulpfile ~/web-starter-kit/gulpfile.js Starting 'styles'... 'styles' errored after 93 ms 
Error: `libsass` bindings not found. Try reinstalling `node-sass`? at getBinding

Eu reinstalei o node e gulp, mas isso não ajuda.

O que eu devo fazer a seguir?

Takagi Akihiro
fonte
O nó de downgrade funcionou para mim.
zero_cool

Respostas:

386

Se a versão do seu nó for 4 e você estiver usando o gulp-sass, tente

npm uninstall --save-dev gulp-sass

npm install --save-dev gulp-sass@2
Roma Rush
fonte
5
problema corrigido me formar no nó 4.1 :) ty
Zalaboza 28/09
Corrigido para mim no Debian 8.1 e no Nó 4.1 também. Muito obrigado.
VinceOPS
3
Obrigado. Provavelmente esta resposta deve ser marcado como o "caminho certo")
Paul Paca-Vaca Seleznev
1
Obrigado, gastamos muito tempo tentando resolver isso e esta foi a solução que funcionou!
HjalmarCarlson
1
Também resolve o problema na v6.9.2 em dezembro de 2016. Obrigado!
Digitalformula
341

Encontrei este comando útil:

npm rebuild node-sass

A partir da rebuild documentação :

Isso é útil quando você instala uma nova versão do nó (ou alterna as versões dos nós) e deve recompilar todos os seus addons C ++ com o novo binário node.js.

http://laravel.io/forum/10-29-2014-laravel-elixir-sass-error

Denis C de Azevedo
fonte
5
Tenho muitos erros, como Python not supported byeFailed at the [email protected] install script 'node build.js'
AlikElzin-kilaka 10/10
14
Essa deve ser a resposta aceita, porque faz um trabalho mínimo para corrigir o problema real.
TheHippo
1
@ AlikElzin-kilaka: Certifique-se de ter o Python instalado e a variável de ambiente PYTHON definida para apontar a instalação.
Roope Hakulinen 30/08/2015
2
Eu tentei isso antes de mais nada e funcionou perfeitamente. Cheers
ConorLuddy
15
Eu recebo umError: Cannot find module 'node_modules/node-sass/node_modules/pangyp/bin/node-gyp'
lrkwz 4/15/15
233

Corri para este erro usando o nó 0.12.0e foi corrigido excluindo o /node_modulesdiretório existente e executando npm update.

createbang
fonte
Isso não vai funcionar se você não tem tudo o que você dependências especificado no package.json
Victor Marchuk
Eu tive que excluir a pasta, executar o npm install e o npm update. Mas isso me apontou na direção certa. Obrigado!
Timóteo
A exclusão da pasta node_modules causou: Error: Cannot find module 'c:\Program Files\nodejs\node_modules\npm\bin\npm-cli.js'ao executar npm update.
AlikElzin-kilaka
41
Esta é a solução drástica. Basta usar o npm rebuild node-sassque é especificamente para reconstruir os addons de C ++.
Chris Sattinger
2
Não corrige nada para mim :(
Isochronous
84

npm rebuild node-sassestava me dando erros (Ubuntu) e npm install gulp-sassnão cometeu o erro desaparecer.

Vi uma solução no GitHub que funcionou para mim:

npm uninstall --save-dev gulp-sass

npm install --save-dev gulp-sass

Pupper
fonte
Hoje trabalhou para versões @lastest
gtamborero
22

Eu tive o mesmo problema:

  • instalando node-sass
  • sendo informado no final da instalação que a instalação foi concluída com êxito
  • sendo solicitado a reinstalar o node-sass.

A solução é instalar a versão 2 do node-sass, que suporta as versões atuais do nó. Consulte https://github.com/sass/node-sass/issues/490#issuecomment-70388754

Corre:

npm install node-sass@2

Em seguida, teste novamente:

$ npm ls node-sass
myapp@0.0.0 /var/www/myapp
└── node-sass@2.0.1

$ gulp sass
[09:48:42] Using gulpfile /var/www/myapp/gulpfile.js
[09:48:42] Starting 'sass'...
[09:48:42] Finished 'sass' after 15 ms
mikemaccana
fonte
8
Para aqueles de nós usando 'grunhido-sass' certifique-se e atualização: 'npm instalar --save-dev grunhido-sass'
natepers
19

Se você usa o Gulp, tente:

npm install gulp-sass

Eu tive o mesmo problema e o gulp-sasspacote foi o problema.

georger
fonte
usando um presente depois de "npm desinstalação --save-dev gole-sass" corrigiu o problema para mim
Sul Aga
2
npm install grunt-sasscorrigiu o problema para mim.
Paul Schreiber
11

eu tive o mesmo problema hoje no trabalho.

npm rebuild node-sass

fez o trabalho para mim

bin2hex
fonte
9

Fazer o downgrade do Nó para 0.10.36 deve fazê-lo por este encadeamento na página do github do node-sass: https://github.com/sass/node-sass/issues/490#issuecomment-70388754

Se você possui NVM, pode:

nvm install 0.10

Caso contrário, você pode encontrar o NVM e as instruções aqui: https://www.npmjs.com/package/nvm

natepers
fonte
resolveu o problema para mim. O nvm também está disponível via homebrew para usuários de mac: "brew install nvm". após a mudança para a versão 0.10.36, verifique se ele é realmente ativo: "nó -v"
cjoy
9
O próprio nó do downgrade é mais uma solução alternativa do que uma resposta.
Mikemaccana
1
Esse bug foi corrigido no [email protected] como @mikemaccana descoberto no final do ticket referenciado por esta resposta. Veja o comentário dele neste tópico.
Natepers 6/04/2015
1
usuários 'grunhido-Sass deve atualizar após a atualização 'nó-sass' se você ainda estiver com problemas: 'npm instalar --save-dev grunhido-sass'
natepers
3

Essa resposta é um pouco ortogonal ao OP, mas -

As ligações da libsass não são instaladas corretamente com o wrapper node-sass no Node v4.0.0. Recebi a mesma mensagem de erro da pergunta ( Error: 'libsass' bindings not found. Try reinstalling 'node-sass')mas acabei desinstalando o Node v4.0.0 e instalando a v0.12.7 usando o nvm, através deste script:

https://gist.github.com/brock/5b1b70590e1171c4ab54

e agora libsass e node-sass estão se comportando corretamente.

ericsoco
fonte
2

você também pode querer npm remove gulp-sassreinstalar o gulp-sass se tiver alternado as versões dos nós.

4m1r
fonte
2

Eu tenho o mesmo problema quando a versão gulp-sass é 1.3.0, e a corrigi após a atualização para a 2.1.0.

Kos
fonte
1

Se você veio aqui porque atualizou o nodejs em todo o sistema e, de repente, seu aplicativo emberjs ^ 1.13 está falhando com esta mensagem, verifique se você não está usando uma versão desatualizada do ember-cli-sass. Você precisará rm -rf node_modules bower_components dist tmpdo aplicativo Ember, atualize-o package.jsoncom a ember-cli-sassversão apropriada e, finalmente npm install --save-dev. Isso foi corrigido para mim, sem a necessidade de reconstruir ou alterar nenhuma outra dependência.

handwovensole
fonte
1

Eu removi toda a /node_modulespasta e executei npm installe funcionou.

Eu tenho o nó v5.5.0, npm 3.3.12

Florin Dobre
fonte
0

Para mim, esse problema foi causado no meu sistema de compilação (Travis CI) ao fazer algo meio bobo no meu .travis.ymlarquivo. Na verdade, eu estava ligando npm install antes nvm use 0.12 , e isso estava causando node-sassa construção, em 0.10vez de 0.12. Minha solução foi simplesmente nvm usesair da seção .travis.ymldo arquivo before_scriptpara antes do npm installcomando, que estava na before_installseção.

No seu caso, é provável que qualquer processo com o qual você esteja iniciando gulpesteja usando uma versão diferente node(do que você esperaria).

Alan H.
fonte
0

Eu tive o mesmo problema que o @Kos, apenas por algum motivo tive que modificar o pacote gulp-sass do package.jsonarquivo antigo que tinha. Em seguida, instalou as dependências atualmente e agora finalmente funciona!

Shay
fonte
0

Meu problema era que eu estava em uma máquina com node version 0.12.2, mas que tinha uma 1.x.xversão antiga do npm. Certifique-se de atualizar sua versão do npm: sudo npm install -g npmDepois disso, remova qualquer um existente node-sasse reinstale-o via npm.

k00k
fonte
0

Você precisa usar a versão correta. Experimentar:

nvm use 0.12
alexfigtree
fonte