In order to allow Ruby Switchers to directly use a Ruby that is built but not installed (such as trunk or a branch), the ruby executable should be placed in the bin/ directory.
After updated again, I see that make runnable created a bin/ruby symlink. However, --enable-shared requires that LD_LIBRARY_PATH=./lib/ is set. Also, bin/ruby cannot find core libraries such as 'thread'.
A ruby binary that is built but not installed is half-baked. It is very hacky to run it without installation; it requires setting library paths, GEM_HOME, etc and etc. In the build process, the half-baked ruby binary is invoked with this script: https://github.com/ruby/ruby/blob/master/tool/runruby.rb
So I guess that just putting bin/ruby does not solve the issue. And, as far as I know, rbenv works well without this feature, so I'm unsure if it is really needed.