Rice is a C++ interface to Ruby's C API. It provides a type-safe and
exception-safe interface in order to make embedding Ruby and writing
Ruby extensions with C++ easier. It is similar to Boost.Python in many
ways, but also attempts to provide an object-oriented interface to all
of the Ruby C API.
What Rice gives you:
* A simple C++-based syntax for wrapping and defining classes
* Automatic conversion of exceptions between C++ and Ruby
* Smart pointers for handling garbage collection
* Wrappers for most builtin types to simplify calling code
I have error during installation process:
/usr/bin/ld: ../../rice/librice.a(Class.o): relocation R_X86_64_32
against `a local symbol' can not be used when making a shared object;
recompile with -fPIC
Yeah, go ahead and file a bug. Please include your system information
including gcc version.
Thanks
Jason
···
2008/2/11 Radosław Bułat <radek.bulat@gmail.com>:
I have error during installation process:
/usr/bin/ld: ../../rice/librice.a(Class.o): relocation R_X86_64_32
against `a local symbol' can not be used when making a shared object;
recompile with -fPIC
I can reproduce this on SuSE 10.1 x86_x64. I'll see what I can do about
fixing it.
We should have been using the fPIC flag all along, since we're building
shared objects.
Paul
···
On Tue, Feb 12, 2008 at 04:52:12AM +0900, Rados?aw Bu?at wrote:
I have error during installation process:
/usr/bin/ld: ../../rice/librice.a(Class.o): relocation R_X86_64_32
against `a local symbol' can not be used when making a shared object;
recompile with -fPIC
Rice and the samples now build fine, though two unit tests still fail:
To_From_Ruby:int_from_ruby: integer -4611686018427387904 too small to convert to `int'
To_From_Ruby:unsigned_int_from_ruby: integer 13835058055282163712 too big to convert to `unsigned int'
We will be sure to test x86_64 better for the next release.