extension gem rice fails to build #133

Closed
mistergibson opened this Issue Dec 31, 2009 · 2 comments

Comments

Projects
None yet
2 participants
git pull
./configure
rake build
bin/rbx gem install rice
Building native extensions.  This could take a while...
ERROR:  Error installing rice:
    ERROR: Failed to build gem native extension.

/home/grant/Downloads/rubinius/bin/rbx extconf.rb
checking for a BSD-compatible install... /usr/bin/install -c
checking whether build environment is sane... yes
checking for a thread-safe mkdir -p... /bin/mkdir -p
checking for gawk... gawk
checking whether make sets $(MAKE)... yes
checking for g++... g++
checking for C++ compiler default output file name... a.out
checking whether the C++ compiler works... yes
checking whether we are cross compiling... no
checking for suffix of executables... 
checking for suffix of object files... o
checking whether we are using the GNU C++ compiler... yes
checking whether g++ accepts -g... yes
checking for style of include used by make... GNU
checking dependency style of g++... gcc3
checking for ranlib... ranlib
checking build system type... i686-pc-linux-gnu
checking host system type... i686-pc-linux-gnu
checking for ruby.h... yes
checking for node.h... no
checking for ruby/node.h... no
checking for version.h... no
checking for env.h... no
checking for rb_class_boot in -lrubinius-1.0.0-rc1... no
checking for doxygen... no
configure: WARNING: doxygen not found - will not generate any doxygen documentation
checking for perl... /usr/bin/perl
configure: creating ./config.status
config.status: creating Makefile
config.status: creating rice/Makefile
config.status: creating test/Makefile
config.status: creating sample/Makefile
config.status: creating ruby/Makefile
config.status: creating ruby/lib/Makefile
config.status: creating test/ext/Makefile
config.status: creating ruby/lib/mkmf-rice.rb
config.status: creating rice/detail/ruby_version_code.hpp
config.status: creating rice/config.hpp
config.status: executing depfiles commands

make
Making all in rice
make[1]: Entering directory `/home/grant/Downloads/rubinius/gems/1.8/gems/rice-1.3.0/rice'
make  all-am
make[2]: Entering directory `/home/grant/Downloads/rubinius/gems/1.8/gems/rice-1.3.0/rice'
g++ -DHAVE_CONFIG_H -I.  -I/home/grant/Downloads/rubinius/vm/capi -I/home/grant/Downloads/rubinius/vm/capi/i686-linux-gnu  -ggdb3 -O2  -I/home/grant/Downloads/rubinius/vm/capi -I/home/grant/Downloads/rubinius/vm/capi/i686-linux-gnu -MT Class.o -MD -MP -MF .deps/Class.Tpo -c -o Class.o Class.cpp
In file included from Identifier.hpp:4,
                 from Object_defn.hpp:7,
                 from Class_defn.hpp:4,
                 from Class.hpp:4,
                 from Class.cpp:1:
detail/ruby.hpp: In function ‘intptr_t Rice::detail::rb_errinfo()’:
detail/ruby.hpp:84: error: ‘ruby_errinfo’ was not declared in this scope
detail/ruby.hpp: In function ‘void Rice::detail::rb_set_errinfo(intptr_t)’:
detail/ruby.hpp:85: error: ‘ruby_errinfo’ was not declared in this scope
In file included from detail/../detail/creation_funcs.hpp:34,
                 from detail/../Data_Type.ipp:8,
                 from detail/../Data_Type_defn.hpp:243,
                 from detail/Exception_Handler.ipp:1,
                 from detail/Exception_Handler.hpp:5,
                 from detail/wrap_function.hpp:10,
                 from detail/define_method_and_auto_wrap.ipp:4,
                 from detail/define_method_and_auto_wrap.hpp:29,
                 from Module_impl.ipp:1,
                 from Module.ipp:4,
                 from Class.ipp:4,
                 from Class.hpp:5,
                 from Class.cpp:1:
detail/../detail/creation_funcs.ipp: In function ‘void Rice::detail::undef_alloc_func(const Rice::Class&)’:
detail/../detail/creation_funcs.ipp:22: error: ‘rb_undef_alloc_func’ was not declared in this scope
In file included from detail/../Data_Type_defn.hpp:243,
                 from detail/Exception_Handler.ipp:1,
                 from detail/Exception_Handler.hpp:5,
                 from detail/wrap_function.hpp:10,
                 from detail/define_method_and_auto_wrap.ipp:4,
                 from detail/define_method_and_auto_wrap.hpp:29,
                 from Module_impl.ipp:1,
                 from Module.ipp:4,
                 from Class.ipp:4,
                 from Class.hpp:5,
                 from Class.cpp:1:
detail/../Data_Type.ipp: In static member function ‘static Rice::Data_Type Rice::Data_Type::bind(const Rice::Module&)’:
detail/../Data_Type.ipp:51: error: there are no arguments to ‘rb_gc_register_address’ that depend on a template parameter, so a declaration of ‘rb_gc_register_address’ must be available
detail/../Data_Type.ipp:51: note: (if you use ‘-fpermissive’, G++ will accept your code, but allowing the use of an undeclared name is deprecated)
detail/../Data_Type.ipp: In static member function ‘static T* Rice::Data_Type::from_ruby(Rice::Object)’:
detail/../Data_Type.ipp:178: error: there are no arguments to ‘rb_mod_ancestors’ that depend on a template parameter, so a declaration of ‘rb_mod_ancestors’ must be available
In file included from detail/../Object.ipp:7,
                 from detail/../Object.hpp:5,
                 from detail/../to_from_ruby.ipp:2,
                 from detail/../to_from_ruby.hpp:5,
                 from detail/Auto_Function_Wrapper.ipp:12,
                 from detail/Auto_Function_Wrapper.hpp:858,
                 from detail/wrap_function.ipp:10,
                 from detail/wrap_function.hpp:342,
                 from detail/define_method_and_auto_wrap.ipp:4,
                 from detail/define_method_and_auto_wrap.hpp:29,
                 from Module_impl.ipp:1,
                 from Module.ipp:4,
                 from Class.ipp:4,
                 from Class.hpp:5,
                 from Class.cpp:1:
detail/../detail/object_call.ipp: In member function ‘Rice::Object Rice::Object::call(Rice::Identifier) const’:
detail/../detail/object_call.ipp:10: error: ‘rb_funcall2’ was not declared in this scope
detail/../detail/object_call.ipp: In member function ‘Rice::Object Rice::Object::call(Rice::Identifier, T1) const’:
detail/../detail/object_call.ipp:19: error: ‘rb_funcall2’ was not declared in this scope
detail/../detail/object_call.ipp: In member function ‘Rice::Object Rice::Object::call(Rice::Identifier, T1, T2) const’:
detail/../detail/object_call.ipp:28: error: ‘rb_funcall2’ was not declared in this scope
detail/../detail/object_call.ipp: In member function ‘Rice::Object Rice::Object::call(Rice::Identifier, T1, T2, T3) const’:
detail/../detail/object_call.ipp:37: error: ‘rb_funcall2’ was not declared in this scope
detail/../detail/object_call.ipp: In member function ‘Rice::Object Rice::Object::call(Rice::Identifier, T1, T2, T3, T4) const’:
detail/../detail/object_call.ipp:46: error: ‘rb_funcall2’ was not declared in this scope
detail/../detail/object_call.ipp: In member function ‘Rice::Object Rice::Object::call(Rice::Identifier, T1, T2, T3, T4, T5) const’:
detail/../detail/object_call.ipp:55: error: ‘rb_funcall2’ was not declared in this scope
detail/../detail/object_call.ipp: In member function ‘Rice::Object Rice::Object::call(Rice::Identifier, T1, T2, T3, T4, T5, T6) const’:
detail/../detail/object_call.ipp:64: error: ‘rb_funcall2’ was not declared in this scope
detail/../detail/object_call.ipp: In member function ‘Rice::Object Rice::Object::call(Rice::Identifier, T1, T2, T3, T4, T5, T6, T7) const’:
detail/../detail/object_call.ipp:73: error: ‘rb_funcall2’ was not declared in this scope
In file included from detail/../Object.ipp:7,
                 from detail/../Object.hpp:5,
                 from detail/../to_from_ruby.ipp:2,
                 from detail/../to_from_ruby.hpp:5,
                 from detail/Auto_Function_Wrapper.ipp:12,
                 from detail/Auto_Function_Wrapper.hpp:858,
                 from detail/wrap_function.ipp:10,
                 from detail/wrap_function.hpp:342,
                 from detail/define_method_and_auto_wrap.ipp:4,
                 from detail/define_method_and_auto_wrap.hpp:29,
                 from Module_impl.ipp:1,
                 from Module.ipp:4,
                 from Class.ipp:4,
                 from Class.hpp:5,
                 from Class.cpp:1:
detail/../detail/object_call.ipp: In member function ‘Rice::Object Rice::Object::call(Rice::Identifier, T1, T2, T3, T4, T5, T6, T7, T8) const’:
detail/../detail/object_call.ipp:82: error: ‘rb_funcall2’ was not declared in this scope
detail/../detail/object_call.ipp: In member function ‘Rice::Object Rice::Object::call(Rice::Identifier, T1, T2, T3, T4, T5, T6, T7, T8, T9) const’:
detail/../detail/object_call.ipp:91: error: ‘rb_funcall2’ was not declared in this scope
detail/../detail/object_call.ipp: In member function ‘Rice::Object Rice::Object::call(Rice::Identifier, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10) const’:
detail/../detail/object_call.ipp:100: error: ‘rb_funcall2’ was not declared in this scope
detail/../detail/object_call.ipp: In member function ‘Rice::Object Rice::Object::call(Rice::Identifier, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11) const’:
detail/../detail/object_call.ipp:109: error: ‘rb_funcall2’ was not declared in this scope
detail/../detail/object_call.ipp: In member function ‘Rice::Object Rice::Object::call(Rice::Identifier, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12) const’:
detail/../detail/object_call.ipp:118: error: ‘rb_funcall2’ was not declared in this scope
detail/../detail/object_call.ipp: In member function ‘Rice::Object Rice::Object::call(Rice::Identifier, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13) const’:
detail/../detail/object_call.ipp:127: error: ‘rb_funcall2’ was not declared in this scope
detail/../detail/object_call.ipp: In member function ‘Rice::Object Rice::Object::call(Rice::Identifier, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14) const’:
detail/../detail/object_call.ipp:136: error: ‘rb_funcall2’ was not declared in this scope
detail/../detail/object_call.ipp: In member function ‘Rice::Object Rice::Object::call(Rice::Identifier, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15) const’:
detail/../detail/object_call.ipp:145: error: ‘rb_funcall2’ was not declared in this scope
In file included from Address_Registration_Guard.hpp:5,
                 from Module_impl.ipp:3,
                 from Module.ipp:4,
                 from Class.ipp:4,
                 from Class.hpp:5,
                 from Class.cpp:1:
Address_Registration_Guard.ipp: In constructor ‘Rice::Address_Registration_Guard::Address_Registration_Guard(intptr_t*)’:
Address_Registration_Guard.ipp:8: error: ‘rb_gc_register_address’ was not declared in this scope
Address_Registration_Guard.ipp: In constructor ‘Rice::Address_Registration_Guard::Address_Registration_Guard(Rice::Object*)’:
Address_Registration_Guard.ipp:15: error: ‘rb_gc_register_address’ was not declared in this scope
Address_Registration_Guard.ipp: In destructor ‘Rice::Address_Registration_Guard::~Address_Registration_Guard()’:
Address_Registration_Guard.ipp:21: error: ‘rb_gc_unregister_address’ was not declared in this scope
In file included from Module.ipp:4,
                 from Class.ipp:4,
                 from Class.hpp:5,
                 from Class.cpp:1:
Module_impl.ipp: In member function ‘void Rice::Module_impl::remove_const(Rice::Identifier)’:
Module_impl.ipp:301: error: ‘rb_mod_remove_const’ was not declared in this scope
In file included from detail/../Data_Type_defn.hpp:243,
                 from detail/Exception_Handler.ipp:1,
                 from detail/Exception_Handler.hpp:5,
                 from detail/wrap_function.hpp:10,
                 from detail/define_method_and_auto_wrap.ipp:4,
                 from detail/define_method_and_auto_wrap.hpp:29,
                 from Module_impl.ipp:1,
                 from Module.ipp:4,
                 from Class.ipp:4,
                 from Class.hpp:5,
                 from Class.cpp:1:
detail/../Data_Type.ipp: In static member function ‘static Rice::Data_Type Rice::Data_Type::bind(const Rice::Module&) [with Base_T = void, T = Rice::detail::Iterator]’:
detail/../Data_Type.ipp:116:   instantiated from ‘Rice::Data_Type& Rice::Data_Type::operator=(const Rice::Module&) [with T = Rice::detail::Iterator]’
Class.cpp:56:   instantiated from here
detail/../Data_Type.ipp:51: error: ‘rb_gc_register_address’ was not declared in this scope
detail/../Data_Type.ipp: In static member function ‘static Rice::Data_Type Rice::Data_Type::bind(const Rice::Module&) [with Base_T = void, T = void]’:
detail/../Data_Type.ipp:116:   instantiated from ‘Rice::Data_Type& Rice::Data_Type::operator=(const Rice::Module&) [with T = void]’
Class.cpp:56:   instantiated from here
detail/../Data_Type.ipp:51: error: ‘rb_gc_register_address’ was not declared in this scope
make[2]: *** [Class.o] Error 1
make[2]: Leaving directory `/home/grant/Downloads/rubinius/gems/1.8/gems/rice-1.3.0/rice'
make[1]: *** [all] Error 2
make[1]: Leaving directory `/home/grant/Downloads/rubinius/gems/1.8/gems/rice-1.3.0/rice'
make: *** [all-recursive] Error 1


Gem files will remain installed in /home/grant/Downloads/rubinius/gems/1.8/gems/rice-1.3.0 for inspection.
Results logged to /home/grant/Downloads/rubinius/gems/1.8/gems/rice-1.3.0/gem_make.out
Owner

evanphx commented Mar 30, 2010

I worked through trying to get rice to compile but it requires RHash, which we don't support currently. Perhaps we could work with the rice developer to eliminate the need for RHash, then we could move forward. Until then, I'm closing this ticket.

Owner

evanphx commented Mar 30, 2010

I worked through trying to get rice to compile but it requires RHash, which we don't support currently. Perhaps we could work with the rice developer to eliminate the need for RHash, then we could move forward. Until then, I'm closing this ticket.

This issue was closed.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment