In order to do so you'd have to build KLayout yourself.
On Windows, there is a compiler switch which controls that ("HAVE_RUBY"). On Linux, the build won't include Ruby support, if the build script can't find a ruby interpreter.
But I wonder what might be the reason to disable that feature. So far nobody asked for that.
Good-day, Matthias,
Thank you for the reply.
Because a confused installing process happened and I supposed the cause is Ruby function, I would like to try to turn off Ruby function in the software. However, it is still failed. The following is error message during installing. Could you please help me figure out it. Thank you very much.
---- error message ----
/home/worker/bin/klayout-0.22.9/src/rba.cc:4140: error: variable or field `trace_callback' declared void
/home/worker/bin/klayout-0.22.9/src/rba.cc:4140: error: `rb_event_t' was not declared in this scope
/home/worker/bin/klayout-0.22.9/src/rba.cc:4140: error: expected primary-expression before '*' token
/home/worker/bin/klayout-0.22.9/src/rba.cc:4140: error: expected primary-expression before ',' token
/home/worker/bin/klayout-0.22.9/src/rba.cc:4140: error: expected primary-expression before "self"
/home/worker/bin/klayout-0.22.9/src/rba.cc:4140: error: expected primary-expression before "id"
/home/worker/bin/klayout-0.22.9/src/rba.cc:4140: error: expected primary-expression before "klass"
/home/worker/bin/klayout-0.22.9/src/rba.cc:4144: error: initializer expression list treated as compound expression
/home/worker/bin/klayout-0.22.9/src/rba.cc:4144: error: expected `,' or `;' before '{' token
/home/worker/bin/klayout-0.22.9/src/rba.cc: In member function `void rba::RubyInterpreter::push_exec_handler(rba::ExecutionHandler*)':
/home/worker/bin/klayout-0.22.9/src/rba.cc:4202: error: `rb_remove_event_hook' was not declared in this scope
/home/worker/bin/klayout-0.22.9/src/rba.cc:4204: error: `RUBY_EVENT_ALL' was not declared in this scope
/home/worker/bin/klayout-0.22.9/src/rba.cc:4204: error: `rb_add_event_hook' was not declared in this scope
/home/worker/bin/klayout-0.22.9/src/rba.cc:4202: warning: unused variable 'rb_remove_event_hook'
/home/worker/bin/klayout-0.22.9/src/rba.cc:4204: warning: unused variable 'RUBY_EVENT_ALL'
/home/worker/bin/klayout-0.22.9/src/rba.cc:4204: warning: unused variable 'rb_add_event_hook'
/home/worker/bin/klayout-0.22.9/src/rba.cc: In member function `void rba::RubyInterpreter::remove_exec_handler(rba::ExecutionHandler*)':
/home/worker/bin/klayout-0.22.9/src/rba.cc:4234: error: `rb_remove_event_hook' was not declared in this scope
/home/worker/bin/klayout-0.22.9/src/rba.cc:4234: warning: unused variable 'rb_remove_event_hook'
/home/worker/bin/klayout-0.22.9/src/rba.cc: At global scope:
/home/worker/bin/klayout-0.22.9/src/rba.cc:4113: warning: 'size_t rba::prepare_trace(const char*)' defined but not used
/home/worker/bin/klayout-0.22.9/src/rba.cc:4130: warning: 'void rba::release_binding()' defined but not used
gmake[1]: *** [rba.o] Error 1
gmake[1]: Leaving directory `/home/worker/bin/klayout-0.22.9/build.linux-64-gcc-release/main'
gmake: *** [all] Error 1
in your build the ruby integration is still active. You can force exclusion of ruby by modifying the build script (replaces lines 252 to 268 by simply "HAVE_RUBY=0").
What is the version of your ruby installation (check with "ruby -v")? Maybe that explains the issue. I have tested with 1.8.7, 1.9.1, 1.9.2 and 1.9.3. Those should work. If have not tested 2.0 yet, 1.9.0 is not supported. Older than 1.8.7 I have no experience with.
Comments
In order to do so you'd have to build KLayout yourself.
On Windows, there is a compiler switch which controls that ("HAVE_RUBY"). On Linux, the build won't include Ruby support, if the build script can't find a ruby interpreter.
But I wonder what might be the reason to disable that feature. So far nobody asked for that.
Matthias
Thank you for the reply.
Because a confused installing process happened and I supposed the cause is Ruby function, I would like to try to turn off Ruby function in the software. However, it is still failed. The following is error message during installing. Could you please help me figure out it. Thank you very much.
---- error message ----
/home/worker/bin/klayout-0.22.9/src/rba.cc:4140: error: variable or field `trace_callback' declared void
/home/worker/bin/klayout-0.22.9/src/rba.cc:4140: error: `rb_event_t' was not declared in this scope
/home/worker/bin/klayout-0.22.9/src/rba.cc:4140: error: expected primary-expression before '*' token
/home/worker/bin/klayout-0.22.9/src/rba.cc:4140: error: expected primary-expression before ',' token
/home/worker/bin/klayout-0.22.9/src/rba.cc:4140: error: expected primary-expression before "self"
/home/worker/bin/klayout-0.22.9/src/rba.cc:4140: error: expected primary-expression before "id"
/home/worker/bin/klayout-0.22.9/src/rba.cc:4140: error: expected primary-expression before "klass"
/home/worker/bin/klayout-0.22.9/src/rba.cc:4144: error: initializer expression list treated as compound expression
/home/worker/bin/klayout-0.22.9/src/rba.cc:4144: error: expected `,' or `;' before '{' token
/home/worker/bin/klayout-0.22.9/src/rba.cc: In member function `void rba::RubyInterpreter::push_exec_handler(rba::ExecutionHandler*)':
/home/worker/bin/klayout-0.22.9/src/rba.cc:4202: error: `rb_remove_event_hook' was not declared in this scope
/home/worker/bin/klayout-0.22.9/src/rba.cc:4204: error: `RUBY_EVENT_ALL' was not declared in this scope
/home/worker/bin/klayout-0.22.9/src/rba.cc:4204: error: `rb_add_event_hook' was not declared in this scope
/home/worker/bin/klayout-0.22.9/src/rba.cc:4202: warning: unused variable 'rb_remove_event_hook'
/home/worker/bin/klayout-0.22.9/src/rba.cc:4204: warning: unused variable 'RUBY_EVENT_ALL'
/home/worker/bin/klayout-0.22.9/src/rba.cc:4204: warning: unused variable 'rb_add_event_hook'
/home/worker/bin/klayout-0.22.9/src/rba.cc: In member function `void rba::RubyInterpreter::remove_exec_handler(rba::ExecutionHandler*)':
/home/worker/bin/klayout-0.22.9/src/rba.cc:4234: error: `rb_remove_event_hook' was not declared in this scope
/home/worker/bin/klayout-0.22.9/src/rba.cc:4234: warning: unused variable 'rb_remove_event_hook'
/home/worker/bin/klayout-0.22.9/src/rba.cc: At global scope:
/home/worker/bin/klayout-0.22.9/src/rba.cc:4113: warning: 'size_t rba::prepare_trace(const char*)' defined but not used
/home/worker/bin/klayout-0.22.9/src/rba.cc:4130: warning: 'void rba::release_binding()' defined but not used
gmake[1]: *** [rba.o] Error 1
gmake[1]: Leaving directory `/home/worker/bin/klayout-0.22.9/build.linux-64-gcc-release/main'
gmake: *** [all] Error 1
Hi,
in your build the ruby integration is still active. You can force exclusion of ruby by modifying the build script (replaces lines 252 to 268 by simply "HAVE_RUBY=0").
What is the version of your ruby installation (check with "ruby -v")? Maybe that explains the issue. I have tested with 1.8.7, 1.9.1, 1.9.2 and 1.9.3. Those should work. If have not tested 2.0 yet, 1.9.0 is not supported. Older than 1.8.7 I have no experience with.
Matthias