dyld:惰性符号绑定失败:未找到符号:_node_module_register

Far*_*ter 12 node.js npm

我已经尝试重新安装和重建npm,但问题仍然存在.

最初,问题在于模块mongodb:我没有那个包,所以我mongodb使用这个命令安装npm install mongodb.

它向我显示以下错误:
dyld: Symbol not found: _node_module_register

Ash*_*ish 32

尝试删除node_modules文件夹并再次运行npm install.

rm -rf node_modules/
npm install
Run Code Online (Sandbox Code Playgroud)

那应该解决它.


dr.*_*tru 20

基本上这个错误意味着 - 一些二进制包是在不同的node.js版本下构建的,彼此不兼容.

  1. 通过NVM确保您使用的是正确版本的node.js,运行node -v;
  2. 通过nvm运行安装并切换到正确的node.js版本后npm update;
  3. 将所有软件包更新(或降级)到兼容版本后,运行npm rebuild;
  4. 注意:npm rebuild可能会抛出错误 - 只需npm rebuild一次又一次地运行,直到它成功运行.

注意:某些命令可能会要求root(sudo)权限,这取决于您以前如何安装软件包,npm和节点本身.nvm - 永远不需要以root身份运行(sudo).