ruby毎のlib,ruby毎のgem

ruby1.8.6系のパッチレベル毎に環境を切り分けたいなーと思ったので,色々と試した.
 
ruby1.9.1だと

$ ./configure --prefix=/home/nari/local --program-suffix=-1.9.1-p0

とすれば,binはruby-1.9.1-p0となるし,libもruby-1.9.1-p0となるのでOK.
 
ruby1.8.6系はどうなのか,というとそうはならなくて,色々と困るわけです.
なので,

$ ./configure --prefix=/home/nari/local --program-suffix=-1.8.6-p386 --libdir=/home/nari/local/lib/ruby-1.8.6-p386

のように指定してlibを切り分けたのですが,今度はLOAD_PATHが通っていない.
 

$ ruby-1.8.6-p386 -e "puts $:"
/home/nari/local/lib/ruby/site_ruby/1.8
/home/nari/local/lib/ruby/site_ruby/1.8/i686-linux
/home/nari/local/lib/ruby/site_ruby
/home/nari/local/lib/ruby/1.8
/home/nari/local/lib/ruby/1.8/i686-linux

 
腹が立ったので./configure.inを自分用に書き換えてしまった.
あーついにやってしまった.

      RUBY_LIB_PREFIX="/lib/ruby"
      ;;
    *)
 -    RUBY_LIB_PREFIX="${prefix}/lib/ruby"
 +    RUBY_LIB_PREFIX="${libdir}/ruby"
      ;;
  esac
  RUBY_LIB_PATH="${RUBY_LIB_PREFIX}/${MAJOR}.${MINOR}"
 
  AC_ARG_WITH(sitedir,
             [  --with-sitedir=DIR      site libraries in DIR [PREFIX/lib/ruby/site_ruby]],
              [sitedir=$withval],
 -            [sitedir='${prefix}/lib/ruby/site_ruby'])
 +            [sitedir='${libdir}/ruby/site_ruby'])
  SITE_DIR=`eval echo \\"${sitedir}\\"`
  case "$target_os" in
    cygwin*|mingw*|*djgpp*|os2-emx*)

この対応がよろしくないのは自分でも分かっているんだけれど,かといって他
の手段も思いつかない.
 

$ ruby-1.8.6-p386 -e "puts $:"
/home/nari/local/lib/ruby-1.8.6-p386/ruby/site_ruby/1.8
/home/nari/local/lib/ruby-1.8.6-p386/ruby/site_ruby/1.8/i686-linux
/home/nari/local/lib/ruby-1.8.6-p386/ruby/site_ruby
/home/nari/local/lib/ruby-1.8.6-p386/ruby/1.8
/home/nari/local/lib/ruby-1.8.6-p386/ruby/1.8/i686-linux

 
他に何か良い方法をご存じの方は教えてください.
 

ついでのgemの切り分け方

rubygemsをmakeするときに

$ ruby-1.8.6-p386 -S setup.rb

とすればいいそうです.
こうすれば,さっきのlibにgemが入るので色々と幸せですね.
「-S」ってオプションを初めて知ったんですが(実は),便利ですね.
あぁ,でも,この場合は-Sいらないかな.まぁいいか.