- ホストはUbuntu8.04 server。
- 参考にするのは、
プロジェクトサイト
quekさんのところ - 事前準備
※Ubuntuパッケージでgitというのはここで欲しいgitではないので注意。
$ sudo aptitude install darcs cvs subversion git-core - 参考サイトに従いdarcsでclbuildをdl。
- はて? ./clbuild checkでhgが無いよ、と言われる。hgって何だろ?
- ぐぐる。どうやらMercurialという分散バージョン管理システムらしい。バージョン管理は群雄割拠状態だな、、、
$ sudo aptitude install mercurial - 参考サイト通りに実行。参考サイトどおり、長い!!ひたすらソースをとってきているようだ。
- その間にclbuildをちら見。
- aclには対応していない。対応環境は次のとおり。
- sbcl, ecl, ccl(darwinも), clisp
- aclには対応していない。対応環境は次のとおり。
- 取得がおわった。30分くらいかかったかな。
313 system definition files registered
だって、富豪になったような気分だ! - さて、SBCL自体が無いし、aclに対応していないので、clbuildを使ってSBCLもつくる。マニュアルの指示にしたがって、
$ ./clbuild buildsbcl
とするがerrorになる。
Warning: Cannot find an executable for implementation sbcl
error: invalid command buildsbcl
Use 'clbuild compile-implementation sbcl' instead.
まったり。言われるがままにcompile-implemetationを実行。
Warning: Cannot find an executable for implementation sbcl
sbcl not found, try running 'clbuild update sbcl'
なんと。言われるがまま実行。これは実施される。で、compile-implemetationを再度やると、makeが無いと怒られる。
ああ、そうだ、この機体はGNUな開発環境を入れていなかった。とりあえず必要なものだけ入れていこう。
$ sudo aptitude install make
これで再度compile-implementationを実施。しかしエラーで終了。エラー原因情報もなし。うむ。先程の戦略がまずかった。おそらくSBCLのサイトにって、SBCLのコンパイルに必要なGNUな開発ツール達を全て入れるべきなのだ。さてこの時点で、2つの選択肢がある。このまますすむのと、ubuntu package のSBCLにしちゃうという方式。せっかくなので、時間はかかるがSBCLをコンパイルして最新版を目指そう。 - SBCLのサイトをみる
インストールのところ
なんと、CL処理系がいるのね。。。。
gccとかいらんのかな、だとしたら、それはそれで偉いなぁ。
とりあえず、aptitudeでSBCLを入れちゃう。(さっきの方針検討は無意味。。。)
$ sudo aptitude install sbcl sbcl-doc
(...)
$ sbcl --version
SBCL 1.0.11.debian
あとSBCLのインストールのところに環境設定の設定要求があるので実施する。
$ export GNUMAKE=gnumake # for bash / zsh
入った。再度compile-implementation。おお、すごいいきおいでcompileしている!
再度エラーになる。gnumakeがない、とかいっている。さっきの環境設定か?
$ export GNUMAKE=
して再実施。すると、
$ make: cc: Command not found
とかおっしゃる。うむ。必要ならはじめからそういってくれい。
$ sudo aptitude install gcc
で、再度、compile-implementation。コンパイル所要時間を抑制するために、screenをdetach。topをながめつつ、待つ。
15分ぐらいでbuild成功!
しかし、この後どうすればいいの?
SBCL has been installed:
binary /home/aka/scratch/clbuild/clbuild/target/bin/sbcl
core and contribs in /home/aka/scratch/clbuild/clbuild/target/lib/sbcl/
ということだから、これを/usr/local/binとか/usr/local/lib/sbclとかにうつせばいいの? というか、make installを自分でやりなさいってこと? それとも clbuild install-implemetation sbclとかあるの?
つづく
0 件のコメント:
コメントを投稿