我想使用谷歌网络入门套件。我安装了node.js v0.12.0, node-sass & gulp。

然后跑着说:

$ sudo npm install

当我输入gulp serve时,得到了这个错误:

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

我重新安装了node和gulp,但这没有帮助。

接下来我该怎么办?


当前回答

如果你来这里是因为你在系统范围内升级了nodejs,突然你的emberjs ^1.13应用程序失败了,请确保你没有使用过时版本的ember-cli-sass。你需要在Ember应用程序中rm -rf node_modules bower_components dist tmp,然后更新你的包。Json和适当的ember-cli-sass版本,最后NPM install——save-dev。这为我修复了它,而不必重新构建或更改任何其他依赖项。

其他回答

我也有同样的问题:

安装node-sass 在安装结束时被告知安装已成功完成 然后被要求重新安装node-sass。

解决方案是安装支持当前版本node的node-sass版本2。见https://github.com/sass/node-sass/issues/490 # issuecomment - 70388754

Run:

npm install node-sass@2

然后重新测试:

$ 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

我在使用节点0.12.0时遇到了这个错误,通过删除现有的/node_modules目录并运行npm update来修复。

我发现这个命令很有用:

npm rebuild node-sass

从重建文档:

这在安装新版本的节点(或交换节点)时非常有用 并且必须使用新的node.js重新编译所有的c++插件 二进制文件。

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

我的问题是,我在一台节点版本为0.12.2的机器上,但它使用的是旧的1.x。npm的X版本。确保更新你的npm版本:sudo npm install -g npm一旦完成,删除所有现有的node-sass并通过npm重新安装它。

npm重建node-sass给我错误(Ubuntu)和npm安装gulp-sass没有使错误消失。

在GitHub上看到了一个对我有用的解决方案:

NPM卸载——save-dev gulp-sass

NPM install——save-dev gulp-sass