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

17

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

最初,问题出在 mongodb 模块上: 我没有这个包,因此我使用以下命令安装了 mongodbnpm install mongodb

它显示以下错误:
dyld:找不到符号:_node_module_register

5个回答

35
尝试删除你的 node_modules 文件夹,然后再次运行 npm install。
rm -rf node_modules/
npm install

那应该就解决了。


同样适用于全局安装在~/.npm/目录下的模块。 - hasnat
这个方法对我没用,但是sudo npm install可行。 - Gayal Kuruppu

22

这个错误的意思是 - 一些二进制包是在不同的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和node本身。 nvm - 永远不需要作为root(sudo)运行。


2
这是对我有效的方法:
rm -rf node_modules/
sudo npm install

不应使用sudo运行 - Purefan

2
如果您刚刚升级了Node并通过WebStorm运行脚本,请确保编辑您的“Run/Debug Configurations”并更新Node解释器的路径。我正在使用节点。
/usr/local/bin/node

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

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

1

确保你的nvm指向正确的nodejs版本。对我来说,在安装npm模块时我使用了不同(更高)的版本。所以只需运行**nvm use** v14.7.0


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接