当我进入node并尝试请求libyaml时,我得到:
> require('libyaml')
Error: /home/ubuntu/shadow/node_modules/libyaml/build/Release/binding.node: invalid ELF header
at Object.Module._extensions..node (module.js:485:11)
at Module.load (module.js:356:32)
at Function.Module._load (module.js:312:12)
at Module.require (module.js:362:17)
at require (module.js:378:17)
at Object.<anonymous> (/home/ubuntu/shadow/node_modules/libyaml/index.js:7:15)
at Module._compile (module.js:449:26)
at Object.Module._extensions..js (module.js:467:10)
at Module.load (module.js:356:32)
at Function.Module._load (module.js:312:12)我使用的是node version 0.8.12和libyaml version 0.2.1。奇怪的是,这个错误依赖于服务器,但它似乎不是基于版本号,因为它在具有相同版本的机器上运行得很好。
发布于 2014-10-29 17:01:38
用户还可以使用'npm rebuild module-name‘在部署机器上重新编译C代码作为预安装脚本的一部分。
发布于 2013-08-23 05:29:45
感谢vinayr建议我在生产机器上运行npm install。问题是他们需要以不同的方式安装npm。我解决了这个问题,在部署过程中,我在计算机上执行了一个预部署命令。问题解决了。
https://stackoverflow.com/questions/18369118
复制相似问题