You can clone with
HTTPS or Subversion.
I'm trying to use the xmlparser gem. "gem install xmlparser" worked fine, but I got the following error when I tried to run it.
$ rbx-e "require 'xml/parser'"
An exception occurred evaluating command line code
Could not open library /user/rhinton/.rvm/gems/rbx-1.2.4-20110705/gems/xmlparser-0.6.81/lib/xmlparser.so - /user/rhinton/.rvm/gems/rbx-1.2.4-20110705/gems/xmlparser-0.6.81/lib/xmlparser.so: undefined symbol: rb_method_boundp (LoadError::InvalidExtensionError)
Rubinius::NativeMethod.load_extension at kernel/common/native_method.rb:26
... (available if helpful)
Here are my system specs.
$ uname -a
Linux 2.6.18-194.11.3.el5 #1 SMP Mon Aug 30 16:19:16 EDT 2010 x86_64 x86_64 x86_64 GNU/Linux
$ rbx -v
rubinius 1.2.4 (1.8.7 release 2011-07-05) [x86_64-unknown-linux-gnu]
The xmlparser gem is version 0.6.81. Any help is greatly appreciated!
rb_method_boundp is really an internal MRI function. I'm not happy to see a C ext using it. We implement as many MRI "C-API" (quotes because there is no such thing defined) as we reasonably can, but I wonder if the lib should be changed to not use this function.
I'll let Evan decide whether we should implement it or not.
The xmlparser gem hasn't been updated since 2007 and won't compile under MRI 1.9 either, so I think Rubinius is unlikely to implement an internal MRI function for its sake.
Can we close this, then?
I've added rb_method_boundp, whether it's private or not is kind of debatable here (as always), since it's part of intern.h.
The xmlparser gem won't be able to load still though, since it tries to define a C int as a Ruby constant, which you can't do in Rubinius and apparently get away with in MRI.