bcrypt invalid elf header when running node app

匿名 (未验证) 提交于 2019-12-03 01:06:02

问题:

I'm working on a nodejs project for school. I wasn't able to install bcrypt with npm so i installed bcrypt-nodejs and the project worked fine yesterday. But today, when I do a "node app" i have this error :

/.../node_modules/bcrypt/node_modules/bindings/bindings.js:79         throw e               ^ Error: /.../node_modules/bcrypt/build/Release/bcrypt_lib.node: invalid ELF header     at Module.load (module.js:356:32)     at Function.Module._load (module.js:312:12)     at Module.require (module.js:364:17)     at require (module.js:380:17)     at bindings (/.../node_modules/bcrypt/node_modules/bindings/bindings.js:74:15)     at Object. (/.../node_modules/bcrypt/bcrypt.js:1:97)     at Module._compile (module.js:456:26)     at Object.Module._extensions..js (module.js:474:10)     at Module.load (module.js:356:32)     at Function.Module._load (module.js:312:12)     at Module.require (module.js:364:17)     at require (module.js:380:17) 

my package.json file looks like this:

{   "name": "Supinfarm",   "version": "0.0.0",   "env": {               "PYTHON": "/usr/bin/python2.6"         },   "dependencies": {     "express": "3.1.0",     "connect-flash": "*",     "jade": "*",     "stylus": "*",     "passport": "*",     "passport-local": "*",     "mongoose": "*",     "bcrypt": "*"   } } 

I'm on Linux ubuntu 10.04 LTS I've tried to find a solution on google without success... Can somebody help me?

回答1:

I've found that bcrypt compiled on OSX will not quite work on Linux. In other words, if you check in the bcrypt compiled on your local OSX workstation, and try to run the node app on your linux servers, you will see the error above.

Solution: npm install bcrypt on Linux, check that in, solved.

Probably the best way to deal with this is exclude your node_modules in .gitignore... and npm install remotely.



标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!