Node-sass: Failed to install node-sass

Created on 17 Feb 2016  ยท  7Comments  ยท  Source: sass/node-sass

Following a re-occurring error message I was getting on my code, see below:

ionic $ /Users/elinnet/wodbrain/node_modules/gulp-sass/node_modules/node-sass/lib/index.js:22
    throw new Error('`libsass` bindings not found. Try reinstalling `node-sass`?');
    ^

Error: `libsass` bindings not found. Try reinstalling `node-sass`?
    at getBinding (/Users/elinnet/wodbrain/node_modules/gulp-sass/node_modules/node-sass/lib/index.js:22:11)

I referred to the node-sass troubleshooting instructions and created a new folder to test the installation of node-sass. I receive the following error message - the result was nothing was installed. I've searched for answers on Stackoverflow and Github - but haven't been able to fix this problem. Could someone help?

npm WARN deprecated [email protected]: this package has been reintegrated into npm and is now out of date with respect to npm

npm WARN deprecated [email protected]: lodash@<3.0.0 is no longer maintained. Upgrade to lodash@^4.0.0.

npm WARN deprecated [email protected]: graceful-fs version 3 and before will fail on newer node releases. Please update to graceful-fs@^4.0.0 as soon as possible.

npm WARN deprecated [email protected]: This package has been renamed. Use lodash.padend@^4.0.0.

npm WARN deprecated [email protected]: This package has been renamed. Use lodash.padstart@^4.0.0

npm WARN enoent ENOENT: no such file or directory, open '/Users/elinnet/package.json'
npm WARN elinnet No description
npm WARN elinnet No repository field.
npm WARN elinnet No README data
npm WARN elinnet No license field.

I'm on OSX with the following specs:

MacBook-Air:temp1 elinnet$ npm -v 3.5.2
MacBook-Air:temp1 elinnet$ node -v v4.0.0
MacBook-Air:temp1 elinnet$ node -p process.versions
{ http_parser: '2.5.0',
  node: '4.0.0',
  v8: '4.5.103.30',
  uv: '1.7.3',
  zlib: '1.2.8',
  ares: '1.10.1-DEV',
  modules: '46',
  openssl: '1.0.2d' }

Many thanks.

Most helpful comment

This issue as been explained many times in the issue tracker.

Each binary is specific to a version of node, you're operating system, and architecture (32 vs 64bit). Any time this changes you need to rebuild the binary for your new environment. Previous binaries will persist so you can run node-sass on multiple environments i.e. VMs or docker containers.
https://github.com/sass/node-sass/issues/1247#issuecomment-154285934

To build the correct binary after changing your environment run

npm rebuild node-sass

It's also seems like you're running a very old version of node-sass. However it's unclear because you skipped important parts of the troubleshooting guide

node -p "console.log(require('node-sass').info)"

All 7 comments

This issue as been explained many times in the issue tracker.

Each binary is specific to a version of node, you're operating system, and architecture (32 vs 64bit). Any time this changes you need to rebuild the binary for your new environment. Previous binaries will persist so you can run node-sass on multiple environments i.e. VMs or docker containers.
https://github.com/sass/node-sass/issues/1247#issuecomment-154285934

To build the correct binary after changing your environment run

npm rebuild node-sass

It's also seems like you're running a very old version of node-sass. However it's unclear because you skipped important parts of the troubleshooting guide

node -p "console.log(require('node-sass').info)"

Hi @xzyfer . Thanks for your comments - as I'm very much a newbie at this. I've deleted the folder and re-run through troubleshooting instructions, input npm rebuild node-sass(the result is 'Binary is fine: exiting) and the
node -p "console.log(require('node-sass').info).

But I'm still getting an error. Have read through multiple comment streams and am not sure what I need to do next. Would you be able to advise?

I've also run 'npm install' but also receive an error related to node-sass.

Elins-MacBook-Air:temp1 elinnet$ npm -v
3.5.2
Elins-MacBook-Air:temp1 elinnet$ node -v
v4.0.0
Elins-MacBook-Air:temp1 elinnet$ node -p process.versions
{ http_parser: '2.5.0',
  node: '4.0.0',
  v8: '4.5.103.30',
  uv: '1.7.3',
  zlib: '1.2.8',
  ares: '1.10.1-DEV',
  modules: '46',
  openssl: '1.0.2d' }
Elins-MacBook-Air:temp1 elinnet$ node -p process.platform
darwin
Elins-MacBook-Air:temp1 elinnet$ node -p process.arch
x64
Elins-MacBook-Air:temp1 elinnet$ npm install node-sass
npm WARN deprecated [email protected]: this package has been reintegrated into npm and is now out of date with respect to npm
npm WARN deprecated [email protected]: lodash@<3.0.0 is no longer maintained. Upgrade to lodash@^4.0.0.
npm WARN deprecated [email protected]: graceful-fs version 3 and before will fail on newer node releases. Please update to graceful-fs@^4.0.0 as soon as possible.
npm WARN deprecated [email protected]: This package has been renamed. Use lodash.padend@^4.0.0.
npm WARN deprecated [email protected]: This package has been renamed. Use lodash.padstart@^4.0.0.

> [email protected] install /Users/elinnet/node_modules/node-sass
> node scripts/install.js

Binary downloaded and installed at /Users/elinnet/node_modules/node-sass/vendor/darwin-x64-46/binding.node

> [email protected] postinstall /Users/elinnet/node_modules/node-sass
> node scripts/build.js

` /Users/elinnet/node_modules/node-sass/vendor/darwin-x64-46/binding.node ` exists. 
 testing binary.
Binary is fine; exiting.
/Users/elinnet
โ””โ”€โ”€ [email protected] 

npm WARN enoent ENOENT: no such file or directory, open '/Users/elinnet/package.json'
npm WARN elinnet No description
npm WARN elinnet No repository field.
npm WARN elinnet No README data
npm WARN elinnet No license field.
Elins-MacBook-Air:temp1 elinnet$ ls
Elins-MacBook-Air:temp1 elinnet$ npm rebuild node-sass

> [email protected] install /Users/elinnet/node_modules/node-sass
> node scripts/install.js


> [email protected] postinstall /Users/elinnet/node_modules/node-sass
> node scripts/build.js

` /Users/elinnet/node_modules/node-sass/vendor/darwin-x64-46/binding.node ` exists. 
 testing binary.
Binary is fine; exiting.
[email protected] /Users/elinnet/node_modules/node-sass
Elins-MacBook-Air:temp1 elinnet$ ./node_modules/.bin/node-sass --version
-bash: ./node_modules/.bin/node-sass: No such file or directory
Elins-MacBook-Air:temp1 elinnet$ node -p "console.log(require('node-sass').info)"
node-sass   3.4.2   (Wrapper)   [JavaScript]
libsass     3.3.2   (Sass Compiler) [C/C++]
undefined

Elins-MacBook-Air:temp1 elinnet$ npm install node-sass
npm WARN deprecated [email protected]: this package has been reintegrated into npm and is now out of date with respect to npm
npm WARN deprecated [email protected]: lodash@<3.0.0 is no longer maintained. Upgrade to lodash@^4.0.0.
npm WARN deprecated [email protected]: graceful-fs version 3 and before will fail on newer node releases. Please update to graceful-fs@^4.0.0 as soon as possible.
npm WARN deprecated [email protected]: This package has been renamed. Use lodash.padend@^4.0.0.
npm WARN deprecated [email protected]: This package has been renamed. Use lodash.padstart@^4.0.0.

> [email protected] install /Users/elinnet/node_modules/node-sass
> node scripts/install.js

Binary downloaded and installed at /Users/elinnet/node_modules/node-sass/vendor/darwin-x64-46/binding.node

> [email protected] postinstall /Users/elinnet/node_modules/node-sass
> node scripts/build.js

` /Users/elinnet/node_modules/node-sass/vendor/darwin-x64-46/binding.node ` exists. 
 testing binary.
Binary is fine; exiting.
/Users/elinnet
โ””โ”€โ”€ [email protected] 

npm WARN enoent ENOENT: no such file or directory, open '/Users/elinnet/package.json'
npm WARN elinnet No description
npm WARN elinnet No repository field.
npm WARN elinnet No README data
npm WARN elinnet No license field.

``````
Elins-MacBook-Air:temp1 elinnet$ npm install

[email protected] install /Users/elinnet/node_modules/node-sass
node scripts/install.js

Binary downloaded and installed at /Users/elinnet/node_modules/node-sass/vendor/darwin-x64-46/binding.node

[email protected] postinstall /Users/elinnet/node_modules/node-sass
node scripts/build.js

/Users/elinnet/node_modules/node-sass/vendor/darwin-x64-46/binding.node exists.
testing binary.
Binary is fine; exiting.
/Users/elinnet
โ””โ”€โ”€ [email protected]

npm WARN enoent ENOENT: no such file or directory, open '/Users/elinnet/package.json'
npm WARN elinnet No description
npm WARN elinnet No repository field.
npm WARN elinnet No README data
npm WARN elinnet No license field.

```.

``````

Looks like it installed fine to me.
On Feb 19, 2016 6:07 AM, "Elin Ng" [email protected] wrote:

Hi @xzyfer https://github.com/xzyfer

Elins-MacBook-Air:temp1 elinnet$ npm -v
3.5.2
Elins-MacBook-Air:temp1 elinnet$ node -v
v4.0.0
Elins-MacBook-Air:temp1 elinnet$ node -p process.versions
{ http_parser: '2.5.0',
node: '4.0.0',
v8: '4.5.103.30',
uv: '1.7.3',
zlib: '1.2.8',
ares: '1.10.1-DEV',
modules: '46',
openssl: '1.0.2d' }
Elins-MacBook-Air:temp1 elinnet$ node -p process.platform
darwin
Elins-MacBook-Air:temp1 elinnet$ node -p process.arch
x64
Elins-MacBook-Air:temp1 elinnet$ npm install node-sass
npm WARN deprecated [email protected]: this package has been reintegrated into npm and is now out of date with respect to npm
npm WARN deprecated [email protected]: lodash@<3.0.0 is no longer maintained. Upgrade to lodash@^4.0.0.
npm WARN deprecated [email protected]: graceful-fs version 3 and before will fail on newer node releases. Please update to graceful-fs@^4.0.0 as soon as possible.
npm WARN deprecated lodash.[email protected]: This package has been renamed. Use lodash.padend@^4.0.0.
npm WARN deprecated lodash.[email protected]: This package has been renamed. Use lodash.padstart@^4.0.0.

[email protected] install /Users/elinnet/node_modules/node-sass
node scripts/install.js

Binary downloaded and installed at /Users/elinnet/node_modules/node-sass/vendor/darwin-x64-46/binding.node

[email protected] postinstall /Users/elinnet/node_modules/node-sass
node scripts/build.js

/Users/elinnet/node_modules/node-sass/vendor/darwin-x64-46/binding.node exists.
testing binary.
Binary is fine; exiting.
/Users/elinnet
โ””โ”€โ”€ [email protected]

npm WARN enoent ENOENT: no such file or directory, open '/Users/elinnet/package.json'
npm WARN elinnet No description
npm WARN elinnet No repository field.
npm WARN elinnet No README data
npm WARN elinnet No license field.
Elins-MacBook-Air:temp1 elinnet$ ls
Elins-MacBook-Air:temp1 elinnet$ npm rebuild node-sass

[email protected] install /Users/elinnet/node_modules/node-sass
node scripts/install.js

[email protected] postinstall /Users/elinnet/node_modules/node-sass
node scripts/build.js

/Users/elinnet/node_modules/node-sass/vendor/darwin-x64-46/binding.node exists.
testing binary.
Binary is fine; exiting.
[email protected] /Users/elinnet/node_modules/node-sass
Elins-MacBook-Air:temp1 elinnet$ ./node_modules/.bin/node-sass --version
-bash: ./node_modules/.bin/node-sass: No such file or directory
Elins-MacBook-Air:temp1 elinnet$ node -p "console.log(require('node-sass').info)"
node-sass 3.4.2 (Wrapper) [JavaScript]
libsass 3.3.2 (Sass Compiler) [C/C++]
undefined

โ€”
Reply to this email directly or view it on GitHub
https://github.com/sass/node-sass/issues/1387#issuecomment-185865499.

If you want to get rid of the annoying missing package.json dependency, just create a new project with npm init -y and install node sass as a dependency with npm install --save node-sass

@xzyfer npm rebuild node-sass works for me
thanks for save my day.

funciono excelente el comando npm rebuild node-sass. muchas gracias

npm rebuild node-sass worked too.
But how can we fix it forever ? As this issue always comes back ...

Was this page helpful?
0 / 5 - 0 ratings

Related issues

liuyuqiang picture liuyuqiang  ยท  3Comments

Pixelatex picture Pixelatex  ยท  3Comments

goseesomething picture goseesomething  ยท  3Comments

paulcpederson picture paulcpederson  ยท  3Comments

samayo picture samayo  ยท  3Comments