Wie erlaubt man einer C-Erweiterung die Verwendung von rb_f_require
um eine Datei von außerhalb des ext
Verzeichnis (z. B. mit lib/foo/foo.rb
von ext/foo.so
).
Antwort
Zu viele Anzeigen?Nicht wirklich sicher, warum dies nicht in html wie der Rest der Ruby-Hacking-Leitfaden, die übersetzt worden war konvertiert, aber vielleicht ein Teil davon wäre hilfreich?
http://rhg.rubyforge.org/svn/en/chapter18.txt
In Anbetracht der Tatsache, dass rb_f_require eine normale Ladepfadsuche durchzuführen scheint, scheint es, dass es in lib/foo suchen würde, wenn dies im Suchpfad liegt. Wenn Sie jedoch nach einer anderen foo.rb suchen, könnte ich mir vorstellen, dass Sie Namensprobleme bekommen, wenn foo.so zuerst erscheint. Vielleicht könnte die Verwendung eines anderen Namens für foo.rb das Problem lösen?