我正在尝试在我的Linux机器上使用gulp项目。 该项目的自述文件告诉我,首先运行sudo npm install -g gulp bower
,然后在项目目录下运行sudo npm install
,然后再bower install
。 一切到这一点对我来说工作得很好。 然而,之后,我尝试运行gulp dist
并得到这个错误:
Error: `libsass` bindings not found in /[PROJECT DIRECTORY]/trunk/node_modules/gulp-sass/node_modules/node-sass/vendor/linux-x64-14/binding.node. Try reinstalling `node-sass`?
用googling这个错误产生了这样的结果: 在nodejs中使用node-sass时没有findlibsass绑定 ,我试过了,但是没有解决任何问题。 当我通过那个吞咽的目录,看看它无法find不同的是linux-x64-14
,我的linux-x64-11
,所以我假设我有错误的版本? 为了好玩,我决定尝试将文件夹的名称更改为想要的名称,并得到了一个不同的错误:
Error: Module did not self-register.
所有这一切真的很奇怪,当我尝试在Windows机器上运行这个项目时,我没有遇到任何这些问题,它只是工作。 我不知道我在做什么错,有什么想法?
我已经通过将GCC从4.4.x更新到4.7.x来解决这个问题。 因为GCC 4.4.x不能编译当前版本的节点。
它使用下面的命令为我工作。 尝试一下
npm rebuild node-sas
s
rm -rf node_modules npm i
当我们更新节点或io.js版本时,这个错误通常显示给我们。
我建议删除你的node_modules文件夹并再次运行npm install
。
如果这不起作用,可能值得删除你的npm缓存。 有很多方法可以做到这一点,包括简单的npm cache clean
我也建议删除~/.npm
文件夹,以确保。
如果这不起作用,让我知道,我们可以开始调试你的实际节点版本和你的package.json