【发布时间】:2014-12-16 22:18:44
【问题描述】:
自从升级以来,我在运行测试时遇到了这个错误:
dyld: lazy symbol binding failed: Symbol not found: __ZN8HunspellC2EPKcS1_S1_
Referenced from: /usr/lib/libhunspell-1.2.dylib
Expected in: flat namespace
dyld: Symbol not found: __ZN8HunspellC2EPKcS1_S1_
Referenced from: /usr/lib/libhunspell-1.2.dylib
Expected in: flat namespace
- 我已尝试重新安装 gem、全新 ruby 安装、ruby 1.9.3 和 2.1.2
- 它特定于系统 hunspell 版本,但我看不到如何在不编辑 ffi-hunspell gem 的情况下停止 ffi 加载
- 我已经使用 xcode-select --install 安装了更新的 xcode 应用程序和命令行工具,它修复了 nokogiri 的一些问题,但没有解决这个问题
我认为这是 Apple 的 hunspell 1.2 版本的问题,因为 if I remove 1.2 from the ffi-hunspell gem(使用 bundle open ffi-hunspell)测试通过了,假设加载了我用自制软件安装的 hunspell 1.3。
有没有办法限制 ffi 查找库的位置?
另外,系统库是怎么回事?
【问题讨论】:
-
不知道是不是这个问题,但是你升级到最新的 XCode 了吗?
-
是的,并且再次执行 xcode-select --install 以获取命令行工具/库
标签: ruby macos ffi osx-yosemite dyld