安裝 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要使用的版本。