Clojure のインストール

言われた通りにやれば全く問題ないのだけれど, 「まぁ言うてなんとかなるやろ」で躓いたのでメモ.

結論から言うとLeiningen git clone しても駄目. https://github.com/technomancy/leiningen に書いてあるようにパッケージマネージャを使うかスクリプトをダウンロードして入れるべし.

駄目なパターン: git clone してパスを通して

$ lein self-install

しても

Leiningen is missing its dependencies.
Please run "lein bootstrap" in the leiningen-core/ directory
with a stable release of Leiningen. See CONTRIBUTING.md for details.

と怒られる. 言われるがままに(?) git checkout して lein bootstrap しても駄目.

パッケージマネージャが駄目な場合は素直に https://raw.github.com/technomancy/leiningen/stable/bin/lein を ~/bin に入れて lein bootstrap する. ファイルは ~/.lein/ 以下にインストールされる.

最新版を使うにはこの lein を使って leiningen-core/ で lein bootstrap する. 最新版と安定板を使い分けるには https://raw.github.com/technomancy/leiningen/stable/bin/lein にあるように ~/bin/lein を git の bin/lein のsymlinkに, ~/local/bin/lein をstableなもの(へのsymlink)にすればよい.

因みに

  • FreeBSD には lein の port はない.
  • macports にはある. 問題なく使える.
  • rlwrap が要るので portinstall devel/rlwrap しておく.

あと, Javaには java/openjdk7 を使った. 何故か fetch http://download.java.net/openjdk/jdk7u6/promoted/b24/openjdk-7u6-fcs-src-b24-09_aug_2012.zip がめちゃくちゃ遅かったので手動でダウンロードしたけど, それ以外は自動でやってくれたので楽だった. (最初は java/linux-sun-jdk17 を入れたのだけれど symlink しても libjli.so がないと怒られたので.)