Library does not load under Rubinius
dazuma opened this issue · comments
I expect you already know about this, but just in case:
rbx-1.2.3-20110315 :001 > RUBY_DESCRIPTION
=> "rubinius 1.2.3 (1.8.7 release 2011-03-15 JI) [x86_64-apple-darwin10.7.4]"
rbx-1.2.3-20110315 :002 > require 'rubygems'
=> true
rbx-1.2.3-20110315 :003 > require 'ffi-geos'
NoMethodError: undefined method `enum' on Geos::FFIGeos (Module)
from Kernel(Module)#enum (method_missing) at kernel/delta/kernel.rb:85
from Geos::FFIGeos.__module_init__ (FFIGeos) at /Users/dazuma/.rvm/gems/rbx-1.2.3-20110315/gems/ffi-geos-0.0.1.beta2/lib/ffi-geos.rb:77
from Geos.__module_init__ (Geos) at /Users/dazuma/.rvm/gems/rbx-1.2.3-20110315/gems/ffi-geos-0.0.1.beta2/lib/ffi-geos.rb:47
from main.__script__ at /Users/dazuma/.rvm/gems/rbx-1.2.3-20110315/gems/ffi-geos-0.0.1.beta2/lib/ffi-geos.rb:5
from Rubinius::CodeLoader.require at kernel/common/codeloader.rb:145
from Kernel(Object)#gem_original_require (require) at kernel/common/kernel.rb:779
from Kernel(Object)#require at /Users/dazuma/.rvm/rubies/rbx-1.2.3-20110315/lib/rubygems/custom_require.rb:32
from { } in Object#irb_binding at (irb):3
Known issue with Rubinius' ffi implementation. We're relying on enums for easy Ruby-ish Symbol-based enums. I'll leave this issue open just for tracking purposes, though.
See https://github.com/evanphx/rubinius/issues/682 for details.
Fixed in RBX - the platform was modified to work with the bastardized FFI gem we all love and use, so anything that runs on MRI should run on Rubinius. Thread safety is a concern however (we dont have a GIL, so libraries must be threadsafe).
This appears to load now in the latest releases.