安裝 erlang
安裝步驟參考文章
- Erlang / downloads
- Elixir / install
- Phoenix Framework / installation
- asdf
目標環境
- Xubuntu 14.04 64位元
事前安裝編譯所需的套件
執行
$ sudo apt-get install build-essential automake autoconf libreadline-dev libncurses-dev libssl-dev libyaml-dev libxslt-dev libffi-dev libtool unixodbc-dev安裝 git
執行
$ sudo apt-get install git安裝 asdf
上面了參考文章有列了不同種的安裝方式,我選擇這裡「Compiling with version managers」提到的「asdf」。
以下是參考步驟
clone asdf
$ git clone https://github.com/HashNuke/asdf.git ~/.asdf設定 asdf source
執行
echo '# source asdf ' >> ~/.bashrc
echo 'source $HOME/.asdf/asdf.sh' >> ~/.bashrc
echo 'source $HOME/.asdf/completions/asdf.bash' >> ~/.bashrc重新進入bash後
觀看 asdf 版本
執行
$ asdf --version顯示
0.1觀看 asdf 使用說明
執行
$ asdf -h顯示
version: 0.1
MANAGE PLUGINS
  asdf plugin-add <name> <git-url>     Add git repo as plugin
  asdf plugin-list                     List installed plugins
  asdf plugin-remove <name>            Remove plugin and package versions
  asdf plugin-update <name>            Update plugin
  asdf plugin-update --all             Update all plugins
MANAGE PACKAGES
  asdf install <name> <version>        Install a specific version of a package or,
                                       with no arguments, install all the package
                                       versions listed in the .tool-versions file
  asdf uninstall <name> <version>      Remove a specific version of a package
  asdf which <name>                    Display version set or being used for package
  asdf where <name> <version>          Display install path for an installed version
  asdf list <name>                     List installed versions of a package
  asdf list-all <name>                 List all versions of a package
UTILS
  asdf reshim <name> <version>         Recreate shims for version of a package
"Late but latest"
-- Rajinikanth安裝 asdf plugin
執行
asdf plugin-add erlang https://github.com/HashNuke/asdf-erlang.git
asdf plugin-add elixir https://github.com/HashNuke/asdf-elixir.git
asdf plugin-add lua https://github.com/Stratus3D/asdf-lua.git
asdf plugin-add modejs https://github.com/HashNuke/asdf-nodejs.git
asdf plugin-add ruby https://github.com/HashNuke/asdf-ruby.git上面只要執行前面兩行就行了,其他的是順手編輯,可以參考「asdf / Add a plugin」,其中有表格可以參考。
觀看 asdf 目前有安裝那些 plugin
執行
$ asdf plugin-list顯示
elixir
erlang
lua
nodejs
ruby安裝 erlang
利用 asdf 安裝 erlang
觀看目前可以安裝的 erlang 有那些版本
$ asdf list-all erlang顯示
18.2.1
18.1
18.0
17.5
17.4
17.3
17.1
17.0上面的結果就是「~/.asdf/plugins/erlang/bin/list-all」的設定
安裝 erlang 18.2.1 這個版本
執行
$ asdf install erlang 18.2.1觀看目前 erlang 已安裝的版本列表
執行
$ asdf list erlang顯示
18.2.1設定 global 使用 erlang 版本
執行
$ echo 'erlang 18.2.1' >> $HOME/.tool-versions觀看「$HOME/.tool-versions」
執行
$ cat $HOME/.tool-versions顯示
erlang 18.2.1這時候就可以執行 erl 了
執行
$ erl顯示
Erlang/OTP 18 [erts-7.2.1] [source] [64-bit] [smp:4:4] [async-threads:10] [hipe] [kernel-poll:false]
Eshell V7.2.1  (abort with ^G)
1>「.tool-versions」,除了可以放在「$HOME」底下,當作global的設定,也可以在每個專案建立「.tool-versions」這個檔案,指定erlang要使用的版本。