将在我的 Openshift 设备上运行的 nodejs 版本从 v0.10 升级到 v0.12 后,我收到以下错误:
Error: /app-root/runtime/repo/node_modules/bcrypt/build/Release/bcrypt_lib.node: undefined
symbol: node_module_register
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 (/app-root/runtime/repo/node_modules/bcrypt/node_modules/bindings/bindings.js:76:44)
at Object.<anonymous> (/app-root/runtime/repo/node_modules/bcrypt/bcrypt.js:3:35)
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)
我的 package.json 中的bcrypt
版本设置为~0.8.5
.
到目前为止,我已经尝试了这些但没有成功:
-rhc ssh myapp
然后更新node-gyp
,rm -rf node_modules
然后npm install
;
- 手动安装依赖项;
- 编辑 package.json 以预安装 node-gyp
"scripts":{
"preinstall": "npm i -g node-gyp && node-gyp clean"
}
有人对我如何解决这个问题有想法/知道吗?(理想情况下,该解决方案不需要升级 gcc)
另外,我正在使用 Ryan J为 nodejs v.012 定制的墨盒