当我试图在Mac OS X中运行一个可执行文件时,我得到以下错误

dyld: Library not loaded: libboost_atomic.dylib
  Referenced from: /Users/"Directory my executable is in"
  Reason: image not found
Trace/BPT trap:5

我已经安装了boost库,它们位于/opt/local/lib中。我认为这个问题与可执行文件只在它所在的目录中查找有关,因为当我粘贴'libboost_atomic。Dylib '在那里,它不再介意了。不幸的是,它会抱怨找不到下一个增强库。

有没有简单的方法来解决这个问题?


当前回答

这招对我很管用:

brew upgrade node

其他回答

选择您的项目 瞄准目标 转到框架、库和嵌入式内容 单击+图标 你应该得到一个提示=>搜索你错过的库;-我的例子是OpenSSL-。 选择它并添加它。 清理项目。 重建。

您可以对可执行文件使用otool命令和-L选项,这将显示可执行文件期望这些库的位置。

如果需要更改这些库的路径,请使用install_name_tool命令,该命令允许您设置库的路径。

我通过重新安装Homebrew解决了这个问题

卸载

ruby -e "$(curl - ssl https://raw.githubusercontent.com/Homebrew/install/master/uninstall)"

安装

ruby / usr / bin / e,“美元(卷毛-fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)”

对于那些仍然有这个问题的人:

这是苹果方面一直存在的问题,对我来说有效的方法是升级到ios 13.4(测试版)。装好后效果很好。

当我试图使用rvm安装ruby 2.3.1时,我得到了这个错误。它首先告诉我运行brew update,我这样做了,然后当我尝试运行rvm install ruby-2.3.1时,我在这个SO问题中收到了错误。

解决办法是首先运行brew升级,显然根据这个superuser.com的问题,你需要同时进行brew更新&& brew升级。完成这些之后,我终于可以安装ruby 2.3.1了。