Installation instructions for Raspberry Pi do not work on latest Raspbian
tomazbracic opened this issue · 3 comments
Following the instructions at https://elixir-lang.org/install.html under "Raspberry Pi" on the latest Raspbian (buster) results in this output when want to install Elixir
So last command fails. I did apt update without errors.
pi@raspberrypi:~ $ sudo apt install elixir
Reading package lists... Done
Building dependency tree
Reading state information... Done
Some packages could not be installed. This may mean that you have
requested an impossible situation or if you are using the unstable
distribution that some required packages have not yet been created
or been moved out of Incoming.
The following information may help to resolve the situation:
The following packages have unmet dependencies:
elixir : Depends: erlang-base (>= 1:23.1) but it is not going to be installed or
erlang-base-hipe (>= 1:23.1) or
esl-erlang (>= 1:23.1) but it is not going to be installed
Depends: erlang-crypto (>= 1:23.1) or
esl-erlang (>= 1:23.1) but it is not going to be installed
Depends: erlang-inets (>= 1:23.1) or
esl-erlang (>= 1:23.1) but it is not going to be installed
Depends: erlang-ssl (>= 1:23.1) or
esl-erlang (>= 1:23.1) but it is not going to be installed
Depends: erlang-syntax-tools (>= 1:23.1) or
esl-erlang (>= 1:23.1) but it is not going to be installed
E: Unable to correct problems, you have held broken packages.
pi@raspberrypi:~ $
So erlang needed is >= 1:23.1
When I check what erlang versions are available I get only
pi@raspberrypi:~ $ sudo apt-cache show erlang-base
Package: erlang-base
Source: erlang
Version: 1:21.2.6+dfsg-1
Architecture: armhf
Maintainer: Debian Erlang Packagers <pkg-erlang-devel@lists.alioth.debian.org>
Installed-Size: 12450
Depends: procps, adduser, libc6 (>= 2.28), libsystemd0, libtinfo6 (>= 6)
Recommends: libsctp1 (>= 1.0.18+dfsg), erlang-crypto (= 1:21.2.6+dfsg-1), erlang-syntax-tools (= 1:21.2.6+dfsg-1)
Suggests: erlang-tools (= 1:21.2.6+dfsg-1), erlang, erlang-manpages, erlang-doc
Conflicts: erlang (<< 1:21.2.6+dfsg-1), erlang-base-hipe, erlang-doc (>> 1:21.2.6+dfsg-999), erlang-doc (<< 1:21.2.6+dfsg), erlang-doc-html (<< 1:13.b.4), erlang-manpages (<= 1:11.b.1-2)
Breaks: rabbitmq-server (<< 3.7.7)
Replaces: erlang (<< 1:21.2.6+dfsg-1), erlang-base-hipe, erlang-dev (<< 1:21.2.6+dfsg-1), erlang-doc (>> 1:21.2.6+dfsg-999), erlang-doc (<< 1:21.2.6+dfsg), erlang-doc-html (<< 1:13.b.4), erlang-examples (<< 1:21.2.6+dfsg-1), erlang-manpages (<= 1:11.b.1-2), erlang-mode (<< 1:12.b.1-dfsg-2), erlang-nox (<< 1:21.2.6+dfsg-1), erlang-src (<< 1:21.2.6+dfsg-1), erlang-typer (<< 1:20.0+dfsg), erlang-x11 (<< 1:21.2.6+dfsg-1)
Provides: erlang-abi-17.0
Homepage: http://www.erlang.org/
Priority: optional
Section: interpreters
Filename: pool/main/e/erlang/erlang-base_21.2.6+dfsg-1_armhf.deb
Size: 7444996
SHA256: db64e43de73b34ce1f0276f617edd60dc66c10d5867f4bac6822e3fada65e57f
SHA1: 2d1d44b01e663e1c8987830906b9a4ac7e59ba77
MD5sum: d2381a2804e6e00cfde1b2086ea36b09
Description: Erlang/OTP virtual machine and base applications
This package contains the Erlang/OTP runtime implementation, which is
configured and built without HiPE support (compiles to byte-code only),
and minimal set of Erlang applications:
compiler - compiles Erlang code to byte-code;
erts - the Erlang runtime system application;
kernel - code necessary to run the Erlang runtime system itself;
ose - code for Enea OSE operating system;
sasl - the system architecture support libraries application;
stdlib - modules for manipulating lists, strings, files etc.
Description-md5: 34f1d00a77372c45835007b286d6b266
pi@raspberrypi:~ $
When I check if I could "lower" my Elixir version and with that my dependency issue I can see... that the lowest possible Elixir that I could install is 1.7.4....
.
.
.
.
Package: elixir
Version: 1.9.0-1
Architecture: all
Maintainer: Erlang Solutions <packages@erlang-solutions.com>
Installed-Size: 5880
Depends: erlang-base (>= 1:21.3) | erlang-base-hipe (>= 1:21.3) | esl-erlang (>= 1:21.3), erlang-crypto (>= 1:21.3) | esl-erlang (>= 1:21.3), erlang-inets (>= 1:21.3) | esl-erlang (>= 1:21.3), erlang-ssl (>= 1:21.3) | esl-erlang (>= 1:21.3), erlang-syntax-tools (>= 1:21.3) | esl-erlang (>= 1:21.3)
Section: contrib
Priority: optional
Homepage: http://elixir-lang.org
Filename: pool/elixir_1.9.0-1~debian~buster_all.deb
Size: 3517528
MD5sum: 52b7c0c5a087bf32b579445f03ad88c8
SHA1: 69acf132bff7f2acf9a7e5b92e9680c382a65d6d
SHA256: 36710ba19b98b606005f22ed0483f7adbd836976f159ebced6f897c5117211e6
Description: Elixir functional meta-programming language
Elixir is a functional, meta-programming aware language built on
top of the Erlang VM. It is a dynamic language that focuses on
tooling to leverage Erlang's abilities to build concurrent,
distributed and fault-tolerant applications with hot code upgrades.
Description-md5: c82bf798164a900ff54f4776cadac009
Package: elixir
Source: elixir-lang
Version: 1.7.4-0.1
Installed-Size: 5818
Maintainer: Evgeny Golyshev <eugulixes@gmail.com>
Architecture: all
Depends: erlang-base (>= 1:19) | erlang-base-hipe (>= 1:19)
Size: 3406720
SHA256: a75c7ac4413ce871e52f38c8ecd236c7b886cd474f1cd7012eb86a5b97d69160
SHA1: 92a8ec1e97d6b0c5ab397d52b2149298e02df69d
MD5sum: 845d5e5b0eaaebe7f6aa08a6ebf15683
Description: functional meta-programming aware language
Elixir is a functional meta-programming aware language intended primarily for
developing distributed, fault-tolerant and scalable systems. Elixir source
code is compiled to bytecode for the Erlang Virtual Machine (EVM), and can use
Erlang libraries transparently.
Description-md5: 572fe6b3095250d25aa22e376bc0e13e
Homepage: http://elixir-lang.org/
Section: interpreters
Priority: optional
Filename: pool/main/e/elixir-lang/elixir_1.7.4-0.1_all.deb
Just so you know... instructions don't really work.
My Raspbeery PI 4 version of OS:
pi@raspberrypi:~ $ cat /etc/rpi-issue
Raspberry Pi reference 2021-01-11
Generated using pi-gen, https://github.com/RPi-Distro/pi-gen, 21090519d85bdaa1615d5d5057d37b09368ea5d2, stage5
pi@raspberrypi:~ $
Thanks @tomazbracic for the report. Those instructions are maintained by the community and they may indeed go outdated. I recommend you to ask in the ElixirForum, maybe someone can help you, and hopefully contribute back.
Thanks @josevalim
Will do, just wanted to comment on this.. if someone needs to know.
hello, am just started learn elixir and try install it in Raspi 4 model B, and get the same error/warnings
i get the solutions from this:
-
Install Erlang:
https://elinux.org/Erlang
sudo apt-get update
sudo apt-get install wget
sudo apt-get install libssl-dev
sudo apt-get install ncurses-dev
wget http://www.erlang.org/download/otp_src_23.2.tar.gz
tar -xzvf otp_src_23.2.tar.gz
cd otp_src_23.2/
./configure
make
sudo make install
cd ..
rm otp_src_23.2.tar.gz
sudo rm -R otp_src_23.2/ -
Install Elixir from source:
wget https://github.com/elixir-lang/elixir/archive/v1.11.4.tar.gz
extract and make install -
And setting elixir PATH:
https://elixir-lang.org/install.html#setting-path-environment-variable
export PATH="$PATH:/path/to/elixir/bin"
=====
after this, erlang and elixir working fine, but when trying install phoenix, mix local.hex and mix deps.get, not working. trying to make it work until morning still can not work. just shutiing down my raspi.
just wake up, power up raspi, trying mix local.hex and mis deps.get,
and it work. and now am working on my first hello world.
:)