dyld:懒符号绑定失败:找不到符号:_node_module_register

我曾尝试重新安装和重buildnpm,但问题仍然存在。

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

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

尝试删除您的node_modules文件夹,然后再次运行npm install。

 rm -rf node_modules/ npm install 

这应该解决它。

基本上这个错误意味着 – 一些二进制包是在不同的node.js版本下构build的,并且不兼容

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

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

如果您刚刚更新节点并通过WebStorm运行脚本,请确保编辑您的运行/debuggingconfiguration并更新节点解释器的path。 我正在使用节点

 /usr/local/bin/node 

,但使用nvm安装Node 4之后,我需要使用

 /path/to/.nvm/v4.2.2/bin/node 

这对我来说是有效的:

 rm -rf node_modules/ sudo npm install