如何允许 C 扩展使用 rb_f_require
从 ext
目录外获取文件(例如,需要 lib/foo/foo.rb
来自 ext/foo.so
)。
最佳答案
不太确定为什么没有像已翻译的 ruby 黑客指南的其余部分那样将其转换为 html,但也许其中的某些部分会有帮助?
http://rhg.rubyforge.org/svn/en/chapter18.txt
鉴于 rb_f_require 似乎进行正常的加载路径搜索,如果它在搜索路径中,它似乎会搜索到 lib/foo。但是,如果您正在寻找另一个 foo.rb,我想如果 foo.so 首先出现,您会遇到名称问题。也许为 foo.rb 使用不同的名称可以解决问题?
关于c - 加载路径和 Ruby C 扩展,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/305261/