DEV Community

Cover image for Instalando o Elixir e o Erlang com o gerenciador de versões asdf
Oliver
Oliver

Posted on • Updated on

Instalando o Elixir e o Erlang com o gerenciador de versões asdf

Esse tutorial usa o gerenciador de versões asdf, mas fique a vontade para utilizar outros se preferir. Infelizmente o asdf não é suportado pelo Windows.
Site oficial do asdf

Asdf

Umas das vantagens de se utilizar um gerenciador de versões como o asdf, é que podemos utilizar e controlar diversas versões de um ou mais runtimes, como o NodeJS, Elixir, Ruby entre outros, usando a mesma cli.

Instalação

Para a instalação em distribuições Linux é necessário possuir o Git. A própria documentação do asdf recomenda a instalação via Git.

Linux

$ git clone https://github.com/asdf-vm/asdf.git ~/.asdf --branch v0.10.0
Enter fullscreen mode Exit fullscreen mode

Agora será preciso adicionar a seguinte linha ao seu arquivo ~/.bashrc

. $HOME/.asdf/asdf.sh
. $HOME/.asdf/completions/asdf.bash

# Abra um novo terminal e cheque a versão para saber se está instalado
$ asdf --version
v0.10.0-77fd510
Enter fullscreen mode Exit fullscreen mode

Elixir é executado na máquina virtual do Erlang, a BEAM. Então antes, precisamos instalar o Erlang para o Elixir funcionar.

Erlang

Para versões do Ubuntu acima de 20.04 LTS é necessário instalar os seguintes pacotes para que o Erlang funcione:

$ apt-get -y install build-essential autoconf m4 libncurses5-dev libwxgtk3.0-gtk3-dev libwxgtk-webview3.0-gtk3-dev libgl1-mesa-dev libglu1-mesa-dev libpng-dev libssh-dev unixodbc-dev xsltproc fop libxml2-utils libncurses-dev openjdk-11-jdk
Enter fullscreen mode Exit fullscreen mode

Primeiro precisamos adicionar o plugin do Erlang ao asdf

# O plugin possui todas as versões disponíveis
$ asdf plugin-add erlang

# É possível listar todas as versões
$ asdf list-all erlang

# Instale uma versão do Erlang com o asdf
$ asdf install erlang 25.0.4

# Definimos uma versão global do Erlang
$ asdf global erlang 25.0.4

# Para verificarmos a versão
$ erl
Erlang/OTP 25 [erts-13.0.4] [source] [64-bit] [smp:4:4] [ds:4:4:10] [async-threads:1] [jit:ns]

Eshell V13.0.4  (abort with ^G)
1>

Enter fullscreen mode Exit fullscreen mode

Elixir

Assim como fizemos anteriormente, adicionaremos o plugin do Elixir

$ asdf plugin-add elixir

# Podemos listar todas as versões do Elixir
$ asdf list-all elixir

# É preciso escolher a versão com o mesmo Erlang/OTP instalado
$ asdf install elixir 1.14.0-rc.1-otp-25

# Definir uma versão global do Elixir através do asdf
$ asdf global elixir 1.14.0-rc.1-otp-25

# Verifique a versão
$ elixir -v
Elixir 1.14.0-rc.1 (185eeec) (compiled with Erlang/OTP 25)
Enter fullscreen mode Exit fullscreen mode

Teste com terminal interativo do Elixir

$ iex
Erlang/OTP 25 [erts-13.0.4] [source] [64-bit] [smp:4:4] [ds:4:4:10] [async-threads:1] [jit:ns]

Interactive Elixir (1.14.0-rc.1) - press Ctrl+C to exit (type h() ENTER for help)

# Teste o Shell Interativo do Elixir
iex(1)> IO.puts("Hello, World!")
Hello, World!
:ok
Enter fullscreen mode Exit fullscreen mode

Top comments (0)