The quickest way to install Elixir is through install scripts, operating system package manager, or using one of the available installers. If such an option is not available, then we recommend using the precompiled packages or compiling the language yourself. All of these options are detailed next.
Note that Elixir v1.19 requires Erlang 26.0 or later. Many of the instructions below will automatically install Erlang for you. If they do not, the “Installing Erlang” section has you covered.
If you are not sure if you have Elixir installed or not, you can runelixir --version in your terminal.
Install Elixir according to your operating system and tool of choice.
Usinginstall scripts
brew install elixirsudo port install elixirBelow we list steps for installing Elixir in different distributions. If your distribution is not listed or the steps below do not work, you may consider usingversion managers.
pacman -S elixirsudo dnf --repo=rawhide install elixir elixir-doc erlang erlang-docsudo dnf install elixir erlangsudo dnf install elixir-doc erlang-docemerge --ask dev-lang/elixirguix package -i elixirThe packages inapt tend to lag several versions behind. You may useRabbitMQ Packages outlined below, which are likely newer thanapt:
$sudoadd-apt-repository ppa:rabbitmq/rabbitmq-erlang$sudoapt update$sudoaptinstallgit elixir erlangThere are many tools that allow developers to install and manage multiple Erlang and Elixir versions. They are useful if you have multiple projects running on different Elixir or Erlang versions, can’t install Erlang or Elixir as mentioned above or if the version provided by your package manager is outdated. Here are some of those tools:
Keep in mind that each Elixir version supports specific Erlang/OTP versions.See the supported versions alongside our docs.
cd /usr/ports/lang/elixir && make install cleanpkg install elixir orpkg install elixir-develpkg_add elixirRunerl in the terminal if you are unsure of your Erlang/OTP version.
Previous Elixir versions are available in ourReleases page.
Usinginstall scripts
scoop install erlangscoop install elixirchoco install elixirTo build and package an Elixir application, with the whole operating system, and burn that into a disk or deploy it overwhere,check out the Nerves project.
If you want to install Elixir as part of an existing Operating System, please follow the relevant steps above for your Operating System or install from precompiled/source.
If you are familiar with Docker you can use the official Docker image to get started quickly with Elixir.
docker run -it --rm elixirelixirdocker run -it --rm elixir bashThe above will automatically point to the latest Erlang and Elixir available. For production usage, we recommend usingHex.pm Docker images, which are immutable and point to a specific Erlang and Elixir version.
Elixir and Erlang/OTP can be quickly installed for macOS, Windows, or Ubuntu using aninstall.sh/install.bat script:
If you are using bash (macOS/Ubuntu/Windows), run:
curl-fsSO https://elixir-lang.org/install.shsh install.sh elixir@1.19.4 otp@28.1installs_dir=$HOME/.elixir-install/installsexportPATH=$installs_dir/otp/28.1/bin:$PATHexportPATH=$installs_dir/elixir/1.19.4-otp-28/bin:$PATHiexIf you are using PowerShell (Windows), run:
curl.exe -fsSO https://elixir-lang.org/install.bat.\install.bat elixir@1.19.4 otp@28.1$installs_dir = "$env:USERPROFILE\.elixir-install\installs"$env:PATH = "$installs_dir\otp\28.1\bin;$env:PATH"$env:PATH = "$installs_dir\elixir\1.19.4-otp-28\bin;$env:PATH"iex.batYou may want toset the $PATH environment variable for your whole system. Useinstall.sh --help orinstall.bat --help to learn more about available arguments and options.
Elixir provides a precompiled package for every release. Firstinstall Erlang and then download the appropriate precompiled Elixir below. You can consult your Erlang/OTP version by runningerl -s halt:
Once you download the release, unpack it, and you are ready to run theelixir andiex commands from thebin directory. However, we recommend you toadd Elixir’s bin path to your PATH environment variable to ease development.
The links above point directly to the GitHub release. We also host and mirror precompiled packages and nightly builds globally viabuilds.hex.pm using the following URL scheme:
https://builds.hex.pm/builds/elixir/${ELIXIR_VERSION}-otp-${OTP_VERSION}.zipFor example, to use Elixir v1.13.3 with Erlang/OTP 24.x, use:
https://builds.hex.pm/builds/elixir/v1.13.3-otp-24.zipTo use nightly for a given Erlang/OTP version (such as 25), use:
https://builds.hex.pm/builds/elixir/main-otp-25.zipFor a list of all builds, use:
https://builds.hex.pm/builds/elixir/builds.txtYou can download and compile Elixir in few steps. The first one is toinstall Erlang. You will also needmake available.
Next you should download source code (.zip,.tar.gz) of thelatest release, unpack it and then runmake inside the unpacked directory (note: if you are running on Windows,read this page on setting up your environment for compiling Elixir).
After compiling, you are ready to run the elixir andiex commands from the bin directory. It is recommended that youadd Elixir’s bin path to your PATH environment variable to ease development.
In case you are feeling a bit more adventurous, you can also compile from main:
$git clone https://github.com/elixir-lang/elixir.git$cdelixir$make clean compileThe only prerequisite for Elixir is Erlang, version 26.0 or later. When installing Elixir, Erlang is generally installed automatically for you. However, if you want to install Erlang manually, you might check:
After Erlang is installed, you should be able to open up the command line (or command prompt) and check the Erlang version by typingerl -s erlang halt. You will see some information similar to:
Erlang/OTP 26.0 [64-bit] [smp:2:2] [...]Notice that depending on how you installed Erlang, Erlang binaries might not be available in your PATH. Be sure to have Erlang binaries in yourPATH, otherwise Elixir won’t work!
It is highly recommended to add Elixir’s bin path to your PATH environment variable to ease development.
On Windows, there areinstructions for different versions explaining the process.
On Unix systems, you need tofind your shell profile file, and then add to the end of this file the following line reflecting the path to your Elixir installation:
exportPATH="$PATH:/path/to/elixir/bin"After Elixir is up and running, it is common to have questions as you learn and use the language. There are many places where you can ask questions, here are some of them:
When asking questions, remember these two tips:
Instead of asking “how to do X in Elixir”, ask “how to solve Y in Elixir”. In other words, don’t ask how to implement a particular solution, instead describe the problem at hand. Stating the problem gives more context and less bias for a correct answer.
In case things are not working as expected, please include as much information as you can in your report, for example: your Elixir version, the code snippet and the error message alongside the error stacktrace.
Enjoy!