当我尝试使用Ruby GDBM gem时,我收到了这个奇怪的错误。宝石曾经工作过。现在,当我调用它时,我得到了这个错误(跨越许多不同版本的ruby):
dyld: lazy symbol binding failed: Symbol not found: __gdbm_lock_file
Referenced from: /usr/local/lib/libgdbm.dylib
Expected in: flat namespace
dyld: Symbol not found: __gdbm_lock_file
Referenced from: /usr/local/lib/libgdbm.dylib
Expected in: flat namespace
我尝试了很多ruby版本,直接从Rbenv执行,甚至安装/卸载我的brew GDBM安装。当我从命令行手动调用GDBM时,我的GDBM Brew安装位于/usr/local/Cellar/gdbm/1.12
GDBM(例如gdbm_load
)。
我能想到的唯一改变是我现在在OSX El Capitan 10.11.6上运行。或者我以某种方式更改了可能导致此错误的配置或PATH文件。
我该如何解决这个问题?
答案 0 :(得分:1)
GDBM ruby gem的维护者has confirmed it's an issue with either HomeBrew or GDBM itself.
在不使用HomeBrew的情况下手动安装GDBM,或者使用以下命令安装它:
brew install gdbm --build-from-source
可以解决问题。