福間@福岡 です。

# 実はRubyそのものとはさほど関係ありません(^^;;

そろそろRAAの "FreeBSD ports/packages" の更新をお願いしようかなぁと
思いつつ、ふと

  ftp://ftp.jp.freebsd.org/pub/FreeBSD/ports/i386/packages-current/lang/

を覗いてみると、なぜか ruby-1.2.2.tgz が見当たらない。
はて、まだミラーが終わってないのかいな、と思って本家 ftp.freebsd.org を
見ても同じ。

おかしいな、と http://bento.freebsd.org/~asami/errorlogs/3-latest/ を見て
みると、なんかpackage listがおかしくてpackageが作れんよ、とか言われている。

…

なるほど、"生"の環境だと tcltklib.so がinstallされないので、そこで
package listとの食い違いが生じて引っかかってるらしい。考えてみれば
当たり前だが…。


ということでご相談なのですが、以下の対処法のうち、どれが望ましいと
思われますか?

  a. ext/tcltklib 以下を絶対にbuildしない。
     いちばん簡単な方法ですが、あんまり嬉しくないですよねぇ…。

  b. rubyのbuildにはTkが必要ですよ、ということにしてしまう。
     これも、Ruby/Tkに用が無いひとにとっては嬉しくない。
     おまけに rubyのbuildにはX11が必要 になってしまうし…(汗

  c. 通常は a. の挙動にしておいて、make WITH_TCLTKLIB=yes とかやった
     ときだけ b. の挙動にする。あるいは WITHOUT_TCLTKLIB=yes でもいい。

  d. lib{tcl,tk} の存在をチェックして a. と b. を自動的に選択する。
     portの枠組みにはそういう便利な機能はなさそうなので、自前で処理して
     やる必要がある。けっこう面倒くさそう(^^;

  e. その他。

# Tkに依存するにしても、ports collectionには
# tk{{41,42,80,81},{42,80}jp} とやたらたくさんのバージョンがあるので、
# どれに依存することにするのかこれまた厄介だったりするわけですが…:(

---
 Yasuhiro Fukuma (福間 康弘) as Yasu.F @ Kitakyushu.Fukuoka.Japan
 Web site: http://www8.big.or.jp/~yasuf/
 “君の主人公は君だ。”