When compiling ruby from source tarball by hand, if you got executable host ruby is required. use --with-baseruby option. Then this can be the reason.
make distclean (assume you configure'ed once) then configure and make, got
executable host ruby is required. use --with-baseruby option
distclean cleans out some file generated from erb, which requiring a existing ruby.
diff -dru ruby-2.0.0-p195/ ruby-2.0.0-p195.distcleaned/
Only in ruby-2.0.0-p195: encdb.h
Only in ruby-2.0.0-p195/ext/ripper: y.output
Only in ruby-2.0.0-p195: golf_prelude.c
Only in ruby-2.0.0-p195: insns.inc
Only in ruby-2.0.0-p195: insns_info.inc
Only in ruby-2.0.0-p195: known_errors.inc
Only in ruby-2.0.0-p195: node_name.inc
Only in ruby-2.0.0-p195: optinsn.inc
Only in ruby-2.0.0-p195: opt_sc.inc
Only in ruby-2.0.0-p195: optunifs.inc
Only in ruby-2.0.0-p195: .revision.time
Only in ruby-2.0.0-p195: transdb.h
Only in ruby-2.0.0-p195: vm.inc
Only in ruby-2.0.0-p195: vmtc.inc
for instance, known_errors.inc is generated from templates/known_errors.inc. It's written in erb.
So, don't touch anything under the source tarball, configure as you needs, then simply make.
If that doesn't work. grub source of 1.8.x, build it. then go ahead with --baseruby options. It sounds sucking, though :(
Thanks! That makes sense and helps.