我刚刚从pdflib.com下载并安装了PDFLib的Ruby for OSX版本。
我正在使用以下设置:
ruby 1.9.3p429 (2013-05-15 revision 40747) [x86_64-darwin12.4.0]
OSX Yosemite 10.10.4
PDFLib 9.0.5
我的Ruby文件中的require 'PDFLib'语句产生以下错误消息:
/Users/[...]/.rvm/rubies/ruby-1.9.3-p429/lib/ruby/site_ruby/1.9.1/rubygems/custom_require.rb:36:in 'require': dlsym(0x7ff6e3ef4b90, Init_PDFLib): symbol not found - [...]/PDFLib.bundle (LoadError)
所以看起来Ruby解释器在库中找不到Init_PDFLib。但从nm的输出中,我猜测这个符号似乎存在:
$ nm -g ./PDFlib.bundle | grep -i init
0000000000001200 T _Init_PDFlib
[...]
有人知道哪里出问题了吗?提前感谢你的回答。
发布于 2015-08-24 16:31:02
找到了!
PDFlib文件名为PDFlib.bundle (小l),我的代码需要'PDFLib‘(大写L)。
事实证明,无论大小写错误,require都加载了包文件,但随后搜索了Init_PDFLib符号,该符号并不存在。
因此,将require语句更改为require 'PDFlib' (小l)是可行的。
https://stackoverflow.com/questions/32138593
复制相似问题