I have inherited a project with a puppet/vagrant/Virtual box setup. The vagrant provision is breaking around my erlangs surrounding rabbitmq-server.
the error:
you cau use Erlang-Solutions repositories:
wget https://packages.erlang-solutions.com/erlang-solutions_1.0_all.deb
sudo dpkg -i erlang-solutions_1.0_all.deb
sudo apt-get update
sudo apt-get install esl-erlang=1:19.3.6
Install Erlang
cd /tmp/
wget https://packages.erlang-solutions.com/erlang-solutions_1.0_all.deb
sudo dpkg -i erlang-solutions_1.0_all.deb
sudo apt-get update -y
sudo apt-get install erlang -y
Install RabbitMQ from source
cd /tmp/
echo 'echo "deb http://www.rabbitmq.com/debian/ testing main" >>
/etc/apt/sources.list' | sudo -s
wget https://www.rabbitmq.com/rabbitmq-signing-key-public.asc
sudo apt-key add rabbitmq-signing-key-public.asc
sudo apt-get update -y
sudo apt-get install rabbitmq-server -y
First download the required version from http://erlang.org/download
wget http://www.erlang.org/download/otp_src_R16B01.tar.gz
tar -xvzf otp_src_R16B01.tar.gz
sudo chmod -R 777 otp_src_R16B01
cd otp_src_R16B01
sudo ./configure
sudo make
sudo make install
All the best
You can use kerl to install different Erlang/OTP on the same machine.
1. Remove previous Erlang versions/packages:
$ sudo apt-get purge erlang esl-erlang erlang-base erlang-crypto erlang-eldap erlang-inets erlang-mnesia erlang-os-mon $ sudo apt-get autoremove $ sudo apt-get install -f $ sudo rm -rf /usr/lib/erlang $ cd /usr/local/bin $ sudo rm -f erl $ sudo rm -f erlc $ sudo rm -f epmd $ sudo rm -f run_erl $ sudo rm -f to_erl $ sudo rm -f dialyzer $ sudo rm -f typer $ sudo rm -f escript $ sudo rm -f ct_run
2. Add the repository entry manually:
To get Ubuntu codename type $ lsb_release -c
. In my case it's xenial.
$ sudo nano /etc/apt/sources.list
and add following text at the end of the file:
# Erlang Solutions
deb https://packages.erlang-solutions.com/ubuntu xenial contrib
$ sudo touch /etc/apt/preferences.d/erlang
$ sudo nano /etc/apt/preferences.d/erlang
with the following contents:
Package: erlang* esl-erlang
Pin: version 1:21.3*
Pin-Priority: 501
where 21.3 is the version of Erlang/OTP.
3. Install Erlang:
$ sudo apt-get update $ sudo apt-get install esl-erlang $ sudo ln -s /usr/lib/erlang/bin/erl /usr/local/bin/erl
4. Check installed Erlang version:
$ erl -eval '{ok, Version} = file:read_file(filename:join([code:root_dir(), "releases", erlang:system_info(otp_release), "OTP_VERSION"])), io:fwrite(Version), halt().' -noshell
Related link: https://www.erlang-solutions.com/resources/download.html
You may also check solution called EVM
here is the detailed information : https://github.com/robisonsantos/evm