node.bcrypt.js: dyld: lazy symbol binding failed: Symbol not found

I’m running this module on OSX 10.6.6, node.js v0.4.1, with bcrypt installed by ‘npm install bcrypt’.

When I require('bcrypt'), I get these messages:

dyld: lazy symbol binding failed: Symbol not found: __ZN2v811HandleScopeC1Ev
  Referenced from: /usr/local/Cellar/node-v/0.4.1/lib/node/.npm/bcrypt/0.2.3/package/build/default/bcrypt_lib.node
  Expected in: flat namespace

dyld: Symbol not found: __ZN2v811HandleScopeC1Ev
  Referenced from: /usr/local/Cellar/node-v/0.4.1/lib/node/.npm/bcrypt/0.2.3/package/build/default/bcrypt_lib.node
  Expected in: flat namespace

About this issue

  • Original URL
  • State: closed
  • Created 13 years ago
  • Comments: 19 (1 by maintainers)

Commits related to this issue

Most upvoted comments

@dujra Try recompiling the addon. npm rebuild bcrypt --build-from-source

npm rebuild bcrypt --build-from-source

Worked for me as well! thanks!

@andrewaarestad I tried downgrading to 3.0.0 but still had the same problem (Node v8.9.4). Running npm rebuild bcrypt --build-from-source worked for me, but that’s not a very nice “hack”. I’m interested if (and when) this can be fixed. It’s not very cool for production environments.

Regards all

@gastonelhordoy I haven’t had any issues after downgrading to bcrypt 3.0.0.

This is happening for me with node 8.2.1 and bcrypt 3.0.2. I was able to fix it locally by recompiling as suggested by @agathver but that’s not an option for me in production so I had to downgrade bcrypt.

@agathver Thank you! This worked for me!

I forgot to nvm use in a new terminal window. It was installed with a different version of Node than the default system Node.

September 2019 and @agathver solution npm rebuild bcrypt --build-from-source worked for me. Not sure why this is the case though? No one else on my team ran into this issue except for me. Thanks for the help!

@PK1210 There was an ABI incompatibility between 8.X releases. You have to recompile from sources in order to bind to the correct symbols, if you are on the affected versions.