Erlang/Elixir 環境を用意した時の個人用の手順メモです。
ディストリビューション付属の Erlang はかなり古いので、tarball からビルドして最新版をつっこんでいます。Erlang は特殊なライブラリを使ってないので、普通のディストリビューションなら同じ手順でインストールできるかと思います。手元では CentOS 6.4, 6.7 と Ubuntu 11.04 で確認できています。
前提ファイルを準備
もし入ってなかったら yum や aptitude などで下記をインストールしておきます。
- gcc
- gcc-c++
- glibc-devel
- make
- ncurses-devel
- openssl-devel
- autoconf
Erlang をインストール
Erlang のソース管理は kerl を使うのが定石らしいので、curl でもらってきます。
$ cd tmp
$ curl -O https://raw.githubusercontent.com/spawngrid/kerl/master/kerl
$ chmod +x kerl
$ ./kerl list releases
R10B-0 R10B-10 R10B-1a R10B-2 R10B-3 R10B-4 R10B-5 R10B-6 R10B-7 R10B-8 R10B-9 R11B-0 R11B-1 R11B-2 R11B-3 R11B-4 R11B-5 R12B-0 R12B-1 R12B-2 R12B-3 R12B-4 R12B-5 R13A R13B01 R13B02-1 R13B02 R13B03 R13B04 R13B R14A R14B01 R14B02 R14B03 R14B04 R14B R14B_erts-5.8.1.1 R15B01 R15B02 R15B02_with_MSVCR100_installer_fix R15B03-1 R15B03 R15B R16A_RELEASE_CANDIDATE R16B01 R16B02 R16B03-1 R16B03 R16B 17.0-rc1 17.0-rc2 17.0 17.1 17.3 17.4 17.5 18.0 18.1 18.2 18.2.1
Run "./kerl update releases" to update this list from erlang.org
最新版(18.2.1)を入れることにします。
$ ./kerl build 18.2.1 build18.2.1
$ sudo mkdir -p /usr/local/erl/18.2.1
$ sudo ./kerl install build18.2.1 /usr/local/erl/18.2.1
$ . /usr/local/erl/18.2.1/activate
動作確認
$ erl
1> crypto:start().
ok
.bashrc に下記行を追加して、ログイン時に activate されるようにして、Erlang の準備は完了です。
source /usr/local/erl/18.2.1/activate
Elixir をインストール
$ cd ~/tmp
$ git clone https://github.com/elixir-lang/elixir.git
$ cd elixir
バージョン(tag)を確認
$ git tag
・
・
・
v1.1.0
v1.1.0-rc.0
v1.1.1
v1.2.0-rc.0
$ git checkout -b v1.1.1 refs/tags/v1.1.1
$ make clean test
Elixir の実行アカウント(ここでは someuser)の権限でファイル一式を移動します。
$ sudo mv elixir /usr/local/
$ sudo chown -R someuser /usr/local/elixir
~/.bashrc で elixir/bin にパスを通して終了
PATH="/usr/local/elixir/bin:${PATH}"
追記:Elixir をアップデート
単にタグ切り替えするだけだと古いバージョンを使い続けてしまうため、make し直す必要があります。例えば 1.1.1 から 1.2 にアップデートする場合、下記でいけました。
$ git co -b v1.2.0 refs/tags/v1.2.0
$ make clean test