Re: Typelib fails to compile using Ruby 1.9.2
Azamat Shakhimardanov <[email protected]>
| Newsgroups | gmane.science.robotics.orocos.devel |
|---|---|
| Message-ID | <[email protected]> |
Hi Ruben, did you resolve this issue? After doing upgrade to Debian 7.2 with gcc 4.7 and ruby1.9.1 I get the same error. I have 2.6. toolchain with electric. Also GEM_HOME is pointing to .gem which is not existent. With ruby1.8.6 the error is different rake setup[-DOROCOS_TARGET=] Using the crusty system installed rake... you probably want to upgrade WARN: cannot load RDoc, documentation generation disabled WARN: no such file to load -- rdoc/task cannot load oroGen did you install Typelib's Ruby bindings and update the RUBYLIB environment variable accordingly ? did you add /home/azamat/programming/ros-electric/orocos_toolchain/orogen/lib to RUBYLIB ? the error is: no such file to load -- facets/string/camelcase /usr/lib/ruby/vendor_ruby/1.8/rubygems/custom_require.rb:36:in `gem_original_require' /usr/lib/ruby/vendor_ruby/1.8/rubygems/custom_require.rb:36:in `require' /home/azamat/programming/ros-electric/orocos_toolchain/typelib/bindings/ruby/lib/typelib.rb:8 /usr/lib/ruby/vendor_ruby/1.8/rubygems/custom_require.rb:36:in `gem_original_require' /usr/lib/ruby/vendor_ruby/1.8/rubygems/custom_require.rb:36:in `require' /home/azamat/programming/ros-electric/orocos_toolchain/orogen/Rakefile:6 /usr/lib/ruby/vendor_ruby/rake/task.rb:205:in `call' /usr/lib/ruby/vendor_ruby/rake/task.rb:205:in `execute' /usr/lib/ruby/vendor_ruby/rake/task.rb:200:in `each' /usr/lib/ruby/vendor_ruby/rake/task.rb:200:in `execute' /usr/lib/ruby/vendor_ruby/rake/task.rb:158:in `invoke_with_call_chain' /usr/lib/ruby/1.8/monitor.rb:242:in `synchronize' /usr/lib/ruby/vendor_ruby/rake/task.rb:151:in `invoke_with_call_chain' /usr/lib/ruby/vendor_ruby/rake/task.rb:144:in `invoke' /usr/lib/ruby/vendor_ruby/rake/application.rb:116:in `invoke_task' /usr/lib/ruby/vendor_ruby/rake/application.rb:94:in `top_level' /usr/lib/ruby/vendor_ruby/rake/application.rb:94:in `each' /usr/lib/ruby/vendor_ruby/rake/application.rb:94:in `top_level' /usr/lib/ruby/vendor_ruby/rake/application.rb:133:in `standard_exception_handling' /usr/lib/ruby/vendor_ruby/rake/application.rb:88:in `top_level' /usr/lib/ruby/vendor_ruby/rake/application.rb:66:in `run' /usr/lib/ruby/vendor_ruby/rake/application.rb:133:in `standard_exception_handling' /usr/lib/ruby/vendor_ruby/rake/application.rb:63:in `run' /usr/bin/rake:27 the env value is RUBYOPT=-rubygems RUBYLIB=/home/azamat/programming/ros-electric/orocos_toolchain/utilrb/lib:/home/azamat/programming/ros-electric/orocos_toolchain/orogen/lib:/home/azamat/programming/ros-electric/orocos_toolchain/install/lib/ruby/1.8/i486-linux:/home/azamat/programming/ros-electric/orocos_toolchain/install/lib/ruby/1.8 Sylvain, any idea? Sincerely Azamat ________________________________ From: Ruben Smits <[email protected]> To: "[email protected]" <[email protected]> Sent: Wednesday, September 11, 2013 1:52 PM Subject: Re: [Orocos-Dev] Typelib fails to compile using Ruby 1.9.2 Using Ruby 1.9.3 I get the following error: [ 81%] Building CXX object bindings/ruby/CMakeFiles/typelib_ruby.dir/ext/memory.o /Users/vm/orocos_ws/src/orocos_toolchain/typelib/bindings/ruby/ext/memory.cc:45:5: error: cannot initialize a member subobject of type 'int (*)()' with an rvalue of type 'int (*)(...)' (int (*)(...))memory_table_compare, ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /Users/vm/orocos_ws/src/orocos_toolchain/typelib/bindings/ruby/ext/memory.cc:46:5: error: cannot initialize a member subobject of type 'int (*)()' with an rvalue of type 'st_index_t (*)(...)': different return type ('int' vs 'st_index_t' (aka 'long')) (st_index_t (*)(...))memory_table_hash ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2 errors generated. Ruben On Wed, Sep 11, 2013 at 11:50 AM, Ruben Smits <[email protected]> wrote: Hi, > > >I'm using Ruby 1.9.2 and when I compile typelib master (using clang on OSX 10.8) I get the following error: > > >[ 72%] Building CXX object bindings/ruby/CMakeFiles/typelib_ruby.dir/ext/memory.o >/Users/vm/orocos_ws/src/orocos_toolchain/typelib/bindings/ruby/ext/memory.cc:35:8: error: unknown type > name 'st_index_t' >static st_index_t memory_table_hash(void* a) > ^ >/Users/vm/orocos_ws/src/orocos_toolchain/typelib/bindings/ruby/ext/memory.cc:39:13: error: use of > undeclared identifier 'st_index_t' > return (st_index_t)a; > ^ >/Users/vm/orocos_ws/src/orocos_toolchain/typelib/bindings/ruby/ext/memory.cc:45:19: error: expected > expression > (st_index_t (*)(...))memory_table_hash > ^ >/Users/vm/orocos_ws/src/orocos_toolchain/typelib/bindings/ruby/ext/memory.cc:45:21: error: expected > expression > (st_index_t (*)(...))memory_table_hash > ^ >/Users/vm/orocos_ws/src/orocos_toolchain/typelib/bindings/ruby/ext/memory.cc:43:28: error: variable has > incomplete type 'struct st_hash_type' >static struct st_hash_type memory_table_type = { > ^ >/Users/vm/orocos_ws/src/orocos_toolchain/typelib/bindings/ruby/ext/memory.cc:43:15: note: forward > declaration of 'st_hash_type' >static struct st_hash_type memory_table_type = { > ^ >/Users/vm/orocos_ws/src/orocos_toolchain/typelib/bindings/ruby/ext/memory.cc:119:33: error: use of > undeclared identifier 'st_data_t' > if (st_lookup(MemoryTable, (st_data_t)ptr, (st_data_t*)&entry)) > ^ >/Users/vm/orocos_ws/src/orocos_toolchain/typelib/bindings/ruby/ext/memory.cc:146:34: error: use of > undeclared identifier 'st_data_t' > if (!st_lookup(MemoryTable, (st_data_t)ptr, (st_data_t*)&entry)) > ^ >/Users/vm/orocos_ws/src/orocos_toolchain/typelib/bindings/ruby/ext/memory.cc:160:33: error: use of > undeclared identifier 'st_data_t' > st_delete(MemoryTable, (st_data_t*)&ptr, 0); > ^ >/Users/vm/orocos_ws/src/orocos_toolchain/typelib/bindings/ruby/ext/memory.cc:160:43: error: expected > expression > st_delete(MemoryTable, (st_data_t*)&ptr, 0); > ^ >/Users/vm/orocos_ws/src/orocos_toolchain/typelib/bindings/ruby/ext/memory.cc:200:34: error: use of > undeclared identifier 'st_data_t' > if (!st_lookup(MemoryTable, (st_data_t)ptr, (st_data_t*)&entry)) { > ^ >/Users/vm/orocos_ws/src/orocos_toolchain/typelib/bindings/ruby/ext/memory.cc:221:33: error: use of > undeclared identifier 'st_data_t' > st_insert(MemoryTable, (st_data_t)ptr, (st_data_t)entry); > ^ >/Users/vm/orocos_ws/src/orocos_toolchain/typelib/bindings/ruby/ext/memory.cc:226:42: error: use of > undeclared identifier 'st_data_t' > if (!st_lookup(MemoryTable, (st_data_t)root_ptr, (st_data_t*)&root_entry)) > ^ >/Users/vm/orocos_ws/src/orocos_toolchain/typelib/bindings/ruby/ext/memory.cc:369:31: error: member access > into incomplete type 'st_table' > return INT2NUM(MemoryTable->num_entries); > ^ >/System/Library/Frameworks/Ruby.framework/Headers/ruby.h:147:32: note: expanded from macro 'INT2NUM' >#define INT2NUM(v) rb_int2inum(v) > ^ >/System/Library/Frameworks/Ruby.framework/Headers/ruby.h:335:12: note: forward declaration of 'st_table' > struct st_table *iv_tbl; > > >Ruben > >-- >Ruben Smits, Phd >Chief Technology Officer >Intermodalics BVBA >+32479511786 >www.intermodalics.eu -- Ruben Smits, Phd Chief Technology Officer Intermodalics BVBA +32479511786 www.intermodalics.eu -- Orocos-Dev mailing list [email protected] http://lists.mech.kuleuven.be/mailman/listinfo/orocos-dev -- Orocos-Dev mailing list [email protected] http://lists.mech.kuleuven.be/mailman/listinfo/orocos-dev