小原です。
$LOAD_PATH ($:) の設定に付いて、rubby-list
40641-40644、40646、40648 等の記事からは、
$: を恒久的に変更できるような印象を受けるのですが、
実際にやってみると、検索PATH $: は、一時的にしか
変更できないように思えます。
----------------------------------------------
[ohr@localhost ohr]$ irb
irb(main):001:0> $LOAD_PATH.push("/path/to/dir");puts $LOAD_PATH
/usr/local/lib/site_ruby/1.8
/usr/local/lib/site_ruby/1.8/i386-linux
/usr/local/lib/site_ruby
/usr/lib/ruby/1.8
/usr/lib/ruby/1.8/i386-linux
.
/path/to/dir
=> nil
irb(main):002:0> exit
[ohr@localhost ohr]$ irb
irb(main):001:0> puts $LOAD_PATH
/usr/local/lib/site_ruby/1.8
/usr/local/lib/site_ruby/1.8/i386-linux
/usr/local/lib/site_ruby
/usr/lib/ruby/1.8
/usr/lib/ruby/1.8/i386-linux
.
=> nil
irb(main):002:0>
---------------------------------------------------
したがって、/path/to/dir にライブラリ "private"
があり、script a.rb が
($LOAD_PATH.push("/path/to/dir") を含まず)
require "private"
の code を含んでいる場合は、起動するにはその度ごとに
ruby -I "/path/to/dir" ./a.rb
等を投入しなければ、ならないように思えます。
それとも、 ruby ./a.rb のコマンドで起動できる
設定方法があれば、教えて欲しいです。
以上 よろしく