インフルエンザですよ奥さん……。 もう一週間くらい体温が 38 度をキープしてて死にそうです。 今年のインフルエンザはマジで凶悪なので、 みなさん気をつけてください。
次回は復活後〜 (23:53)
寝ようかと思ったけどこれだけ投げとく。
http://zunda.freeshell.org/d/20050414.html#p03
「setup.rb で --prefix を指定すると site_ruby の値が /usr/local/local/lib/... になっちゃうよ〜」問題。 これはこないだ別の人からもメールで文句を言われて そしてまた今来たメールにも書いてあった。
とりあえず、これについては解決策を考えつかない。 「/usr/local」は一般的な prefix の値 (/usr) を含んでいるので、 setup.rb みたいに自動処理するとどうしても $(prefix)/local/... に ならざるをえない。
じゃあ新しい rbconfig.rb の仕様を使って MAKEFILE_CONFIG を見ればよいかというと そうでもない。例えば Debian だと --sitedir=$(prefix)/local/... と定義されているので、--prefix=/usr/local にするとやっぱり /usr/local/local/... になる。
考えてみると、prefix を変えると site_ruby も変わるってのが変なのかもしれん。 site_ruby のパスは ruby に埋め込まれており、その値でないと意味をなさない。 だから setup.rb で指定する値に関らず一定であったほうがよいのではないだろうか。
また、siteruby 以外にも不変であったほうがよい値はあるだろうか。 (01:11)
Copyright (c) 2002-2007 青木峰郎 / Minero Aoki. All rights reserved.
Debianでは少し前に--sitedir=/usr/local/...に変更しました。
風邪おだいじに〜。
パッケージャの立場から言うと、最終的なインストール先を決めるprefixとパッケージ作成時に仮にインストールされるdestdirを別に指定したいような気がします。例えば実行ファイルは、プログラムからは{prefix}/binにインストールされるように見えるのだけれど実際は{destdir}/{prefix}/binにインストールされる。
そこから演繹して、site_rubyはインストールされているRubyから取ってくるんだけどインストール先はdestdirみたいなもので制御できるとうれしいです。例えば、site_rubyが/usr/local/lib/ruby/site_rubyならprefixが何であれ、ruby setup.rb install -destidr=/var/tmp/hoge-rootで/var/tmp/hoge-root/usr/local/lib/ruby/site_rubyにインストールされる。
一方、野良ビルドする立場からすれば、$HOME/localに入れておいて$:.unshiftして使いたい場合も想像できます。するとprefixで全部変えられた方がうれしいかも。
むむーん。風邪ひきの青木さんを更に混乱にまきこむようなツッコミですみません。もう少し考えてみます。
DESTDIR 相当は ruby setup.rb install --prefix=DIR
があります。
ruby setup.rb config --prefix=$HOME とするのは
ありそうですが、その場合は site_ruby の値をその
まま使っても嬉しくないので、合わせる意味がないと
思います。どっちにしろ --rbdir は指定してもらわ
ないと。