【问题标题】:Try reinstalling `node-sass` on node 0.12?尝试在节点 0.12 上重新安装“node-sass”?
【发布时间】:2015-04-09 03:40:18
【问题描述】:

我想使用 google web starter kit。我安装了 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,但这没有帮助。

接下来我该怎么做?

【问题讨论】:

  • 降级节点对我有用。

标签: node.js sass gulp


【解决方案1】:

您需要使用正确的版本。试试:

nvm use 0.12

【讨论】:

    【解决方案2】:

    我今天在工作中遇到了同样的问题。

    npm rebuild node-sass

    替我完成任务

    【讨论】:

      【解决方案3】:

      我删除了所有/node_modules 文件夹,然后运行npm install,它成功了。

      我有节点 v5.5.0,npm 3.3.12

      【讨论】:

        【解决方案4】:

        我的问题是我在一台带有node version 0.12.2 的机器上,但它有一个旧的1.x.x 版本的npm。请务必更新您的 npm 版本:sudo npm install -g npm 完成后,删除任何现有的 node-sass 并通过 npm 重新安装。

        【讨论】:

          【解决方案5】:

          如果您来到这里是因为您在系统范围内升级了 nodejs 并且突然您的 emberjs ^1.13 应用程序因此消息而失败,请确保您没有使用过时版本的 ember-cli-sass。您需要在 Ember 应用程序中rm -rf node_modules bower_components dist tmp,然后使用适当的ember-cli-sass 版本更新您的package.json,最后是npm install --save-dev。这为我修复了它,而无需重建或更改任何其他依赖项。

          【讨论】:

            【解决方案6】:

            我遇到了与@Kos 相同的问题,只是出于某种原因,我不得不从旧的package.json 文件中修改 gulp-sass 包。然后它当前安装了依赖项,现在它终于可以工作了!

            【讨论】:

              【解决方案7】:

              gulp-sass 版本为 1.3.0 时遇到同样的问题,升级到 2.1.0 后修复。

              【讨论】:

                【解决方案8】:

                npm rebuild node-sass 给了我错误 (Ubuntu),npm install gulp-sass 并没有让错误消失。

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

                npm uninstall --save-dev gulp-sass

                npm install --save-dev gulp-sass

                【讨论】:

                • 今天为@最新版本工作
                【解决方案9】:

                如果你的 node 版本是 4 并且你正在使用 gulp-sass,那么试试

                npm uninstall --save-dev gulp-sass
                
                npm install --save-dev gulp-sass@2
                

                【讨论】:

                • 解决了我在节点 4.1 上的问题 :) ty
                • 在 Debian 8.1 和 Node 4.1 上也为我修复。非常感谢。
                • 谢谢。可能这个答案应该被标记为“正确的”)
                • 谢谢,花了很多时间试图解决这个问题,这就是有效的解决方案!
                • 截至 2016 年 12 月也解决了 v6.9.2 上的问题。谢谢!
                【解决方案10】:

                这个答案与 OP 有点正交,但是 --

                libsass 绑定无法使用 Node v4.0.0 上的 node-sass 包装器正确安装。我收到了与问题相同的错误消息(Error: 'libsass' bindings not found. Try reinstalling 'node-sass'),但我最终通过此脚本卸载了 Node v4.0.0 并使用 nvm 安装了 v0.12.7:

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

                现在 libsass 和 node-sass 行为正常。

                【讨论】:

                  【解决方案11】:

                  对我来说,这个问题是由于在我的 .travis.yml 文件中做了一些愚蠢的事情而在我的构建系统 (Travis CI) 中引起的。实际上,我调用了npm install 之前 nvm use 0.12,这导致为0.10 而不是0.12 构建node-sass。我的解决方案只是将nvm use.travis.yml 文件的before_script 部分移到npm install 命令之前,该命令位于before_install 部分中。

                  在您的情况下,您以gulp 开始的任何进程都可能使用不同版本的node(与您预期的不同)。

                  【讨论】:

                    【解决方案12】:

                    我发现了这个有用的命令:

                    npm rebuild node-sass
                    

                    来自rebuilddocumentation

                    这在您安装新版本的节点(或切换节点)时很有用 版本),并且必须使用新的 node.js 重新编译所有 C++ 插件 二进制。

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

                    【讨论】:

                    • 出现很多错误,例如Python not supported byFailed at the node-sass@0.8.6 install script 'node build.js'
                    • 这应该是公认的答案,因为它只做最少的工作来解决实际问题。
                    • @AlikElzin-kilaka:确保您已安装 Python,并且将 PYTHON 环境变量设置为指向安装。
                    • 我在其他任何事情之前都尝试过这个,并且效果很好。干杯
                    • 我收到了Error: Cannot find module 'node_modules/node-sass/node_modules/pangyp/bin/node-gyp'
                    【解决方案13】:

                    如果您使用 Gulp,请尝试:

                    npm install gulp-sass

                    我遇到了同样的问题,gulp-sass 包就是问题所在。

                    【讨论】:

                    • 在“npm uninstall --save-dev gulp-sass”为我解决了这个问题之后使用这个
                    • npm install grunt-sass 为我解决了这个问题。
                    【解决方案14】:

                    如果您切换了节点版本,您可能还想npm remove gulp-sass 并重新安装 gulp-sass。

                    【讨论】:

                      【解决方案15】:

                      我遇到了同样的问题:

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

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

                      运行:

                      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
                      

                      【讨论】:

                      • 对于我们这些使用 'grunt-sass' 的人,请务必更新:'npm install --save-dev grunt-sass'
                      【解决方案16】:

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

                      【讨论】:

                      • 如果你没有在 package.json 中指定所有依赖项,那将无法工作
                      • 我不得不删除文件夹,然后运行 ​​npm install,然后运行 ​​npm update。但这为我指明了正确的方向。谢谢!
                      • 删除node_modules文件夹导致:Error: Cannot find module 'c:\Program Files\nodejs\node_modules\npm\bin\npm-cli.js'运行npm update时。
                      • 这是一个彻底的解决方案。只需使用专门用于重建 C++ 插件的npm rebuild node-sass
                      • 对我没有任何帮助:(
                      【解决方案17】:

                      将节点降级到 0.10.36 应该按照 node-sass github 页面上的这个线程进行:https://github.com/sass/node-sass/issues/490#issuecomment-70388754

                      如果你有 NVM,你可以:

                      nvm install 0.10
                      

                      如果没有,可以在此处找到 NVM 和说明:https://www.npmjs.com/package/nvm

                      【讨论】:

                      • 为我解决了这个问题。 Mac 用户也可以通过 homebrew 获得 nvm:“brew install nvm”。切换到 0.10.36 版本后,确保它是真正活跃的:“node -v”
                      • 降级节点本身更像是一种解决方法而不是答案。
                      • 此错误已在 node-sass@2.0.1- 中修复,正如 @mikemaccana 在此答案引用的票证末尾发现的那样。在此线程中查看他的评论。
                      • 'grunt-sass' 用户应该在更新 'node-sass' 后更新如果您仍然遇到问题:'npm install --save-dev grunt-sass'
                      猜你喜欢
                      • 2015-07-15
                      • 2015-08-03
                      • 2018-09-10
                      • 2020-10-31
                      • 2016-08-21
                      • 1970-01-01
                      • 2016-07-04
                      • 2021-03-01
                      • 2019-10-09
                      相关资源
                      最近更新 更多