Hello,
Requirements:
I have Searched the forum for my issue and found nothing related or helpful
I have checked the Resources category (Resources Index)
I have reviewed the Wiki for relevant information
I have read the the Release Notes and Errata
OpenMandriva Lx version:
OpenMandriva Lx release 6.0 (Vanadium) Rock for x86_64
Desktop environment (KDE, LXQT…):
KDE Plasma Version (Wayland): 6.3.4
Description of the issue (screenshots if relevant):
When searching the repos for erlang, I could only find
erlang-rpm-macros.noarch : Macros for simplifying building of Erlang packages
Running erl
would only result in Would you like to install erlang-base(contrib) y/N
. Typing y
then hitting Enter would do nothing and return me to the next prompt.
After further searching in the forums, I found an article discussing using abb
to install applications. The following is what I did to get Erlang (OTP 25), Rebar3 and LFE installed.
Relevant informations (hardware involved, software version, logs or output…):
This was a newly installed OMLx 6.0, with Java 17 and NetBeans and ECL just installed.
Hardware: (Dell Precision 5530)
$ inxi -CGI
CPU:
Info: 6-core model: Intel Core i7-8850H bits: 64 type: MT MCP cache:
L2: 1.5 MiB
Speed (MHz): avg: 800 min/max: 800/4300 cores: 1: 800 2: 800 3: 800 4: 800
5: 800 6: 800 7: 800 8: 800 9: 800 10: 800 11: 800 12: 800
Graphics:
Device-1: Intel CoffeeLake-H GT2 [UHD Graphics 630] driver: i915 v: kernel
Device-2: NVIDIA GP107GLM [Quadro P1000 Mobile] driver: nvidia
v: 575.51.02
Device-3: Microdia Integrated_Webcam_HD driver: uvcvideo type: USB
Display: wayland server: X.org v: 1.21.1.18 with: Xwayland v: 24.1.8
compositor: kwin_wayland driver: X: loaded: modesetting unloaded: fbdev,vesa
dri: iris,nouveau gpu: i915 resolution: 1920x1080~60Hz
API: EGL v: 1.5 drivers: iris,kms_swrast,nouveau,nvidia,swrast
platforms: gbm,wayland,x11,surfaceless,device
API: OpenGL v: 4.6.0 compat-v: 4.5 vendor: intel mesa v: 25.0.7
renderer: Mesa Intel UHD Graphics 630 (CFL GT2)
API: Vulkan v: 1.4.312 drivers: N/A surfaces: xcb,xlib,wayland
Info: Tools: api: clinfo, eglinfo, glxinfo, vulkaninfo de: kscreen-console
gpu: nvidia-smi wl: wayland-info x11: xdpyinfo, xprop, xrandr
Info:
Memory: total: 32 GiB note: est. available: 31.01 GiB used: 4.81 GiB (15.5%)
Processes: 291 Uptime: 4h 4m Shell: Bash inxi: 3.3.37
1. Install Erlang
Step 1: Install relevant software
$ sudo dnf install git abb
$ abb clone erlang
Step 2: Attempt the build and install any other required packages
$ abb build erlang
At this point abb
will let you know about any missing dependencies. Repeat this step until abb
stops complaining. Please note I had java-17-openjdk-devel
et. al. installed prior. In my case these were the missing dependencies.
$ sudo dnf in -y bison flex java-rpmbuild pkgconfig tcl-devel unixODBC-devel valgrind-devel wxgtkc3.2-devel lib64gd-devel libcurl-devel libcurl4 wxwidget
Step 3: After a successful build, install the newly minted RPM(s).
$ cd RPMS/x86_64 # where the output of the builds are, aka the RPMs
$ sudo dnf in erlang-base-<version>.rpm # Use [TAB] for autocomplete
$ erl # Test that you have a working version of Erlang.
2. Install Rebar3
Things get a bit more involved here.
$ abb clone erlang-rebar3
Update the erlang-rebar3.spec
file to the version of rebar3
that works with the OTP version installed in the previous section. As of this writing, it was OTP 25, so I changed the version to 3.24.0
and removed the %mkrel
token.
Also update the Source0
to download the .zip
or tar.gz
file from GitHub.
$ abb build erlang-rebar3
$ cd erlang-rebar3/RPMS/x86_64 # you will see the RPM with the rebar3 version you selected.
$ sudo dnf in -y erlang-rebar3-[TAB] # too long to write it out and your version may vary...
$ rebar3 version # test that rebar3 was successfully installed.
3. Install Erlang-LFE
At this point, using the abb
version of erlang-lfe
was getting too complicated.
Easiest option at this point is to use the rebar3_lfe
plugin. Follow the setup instructions found here, adding the plugin to ~/.config/rebar3/rebar.config.
$ mkdir -p $HOME/.config/rebar3
$ rebar3 lfe repl # Testing LFE