nahoj
Hello, I’m a newcomer to both Elixir and Erlang and I’ve run into an issue and I hope someone here can help me.
When using mix compile I seem to be getting a compatibility error, that the beam file is compiled for a later version of the runtime system.
16:05:42.441 [error] beam/beam_load.c(184): Error loading module luerl:
This BEAM file was compiled for a later version of the runtime system than the current (Erlang/OTP 25).
To fix this, please re-compile this module with an Erlang/OTP 25 compiler.
(Use of opcode 181; this emulator supports only up to 180.)
A simple cleanup of deps/ and _build/ will recover from the issue, but that isn’t desired.
I’ve isolated it to only show up on Elixir version 1.15.x using below Erlang/OTP
mix --version
Erlang/OTP 25 [erts-13.2.2.3] [source] [64-bit] [smp:20:20] [ds:20:20:10] [async-threads:1] [jit:ns]
Mix 1.15.7 (compiled with Erlang/OTP 24)
I’ve created a sample repository https://github.com/JohanKarlbergg/01e3c763592bbc85568a28a81ae6f5f732d8d183f7f533080a0998e7229127fe and put a command in the README reproduce the issue.
I’ve tried to search for similar issues without success.
Trending in Questions
Hello!
Suppose you are building workflow (order / task / payment) processing system with the following requirements:
Each workflow con...
New
I’m aware of 2 such projects, are there others?
git: GitHub - team-alembic/realworld: A fullstack Phoenix LiveView application with back...
New
Hi all,
I’m working on a Phoenix project where I need to make external HTTP requests and I’m trying to choose between Req and HTTPoison....
New
Hi everyone.
My team and I have been working on a fairly modest app based around video streaming and chat, but we’ve landed a customer t...
New
Hi,
we run different LLM models across a cluster, with each node loading a configurable subset. Model-specific queues let nodes consume ...
New
Hi all, I’m new here and would like to hear peoples views on my Elixir/Phoenix based game-engine! :smiley:
Mutonex gamedesign was finish...
New
Hello
I’ve been coding in Elixir for almost two years now because of my current job where we implemented Elixir in our application. But ...
New
Other Trending Topics
Hey there,
I haven’t seen a list of useful Elixir specific skills for the popular AI tools yet so I’m starting one here with my first.
...
New
I fully migrated to my own harness from Anthropic/Gemini and I think it’s time to share it. Welcome DSH, the DeepSeek Harness, fully writ...
New
Hey. Is there anyone here who creates agents in their apps? Not talking about using agents, but creating them. I’m finding it pretty diff...
New
(I just needed to vent somewhere and LinkedIn is full of hope, or hype, I’m not sure which exactly)
AI dream has many faces, but general...
New
With AI doing more of the implementation work, I’ve been wondering how much coding I should deliberately keep doing myself.
My main conc...
New
In 2021 I started a new library called Tempo with the objective of modelling time as a set of intervals - not as instants. In 2022 I gave...
New
Categories:
Sub Categories:
Forums
Popular Tags
- #ecto
- #liveview
- #troubleshooting
- #learning-elixir
- #library
- #deployment
- #erlang
- #testing
- #genserver
- #mix
- #absinthe
- #remote-other
- #otp
- #plug
- #how-to-question
- #macros
- #postgres
- #elixirconf
- #channels
- #exunit
- #discussion
- #code-sync
- #podcasts
- #javascript
- #onsite
- #dialyzer
- #docker
- #authentication
- #ai
- #umbrella
- #full-time-contract
- #podcasts-by-brainlid
- #blog-post
- #ecto-query
- #elixirconf-us
- #elixir-ls
- #phoenix_html
- #iex
- #graphql
- #genstage
- #websockets
- #supervisor
- #advent-of-code
- #distillery
- #processes
- #elixirconf-eu
- #api
- #forms
- #security
- #hex










Showing Posts 1 to 10- Show Best Posts
- Show All (oldest first)
- Show All (newest first)
Eiji
Because this is not considered as an issue. The message is clear enough and as you said there is solution of cleanup which you know without searching. In such case if people know something without searching they don’t create any issue and just your question is not common.
Keep in mind that on the forum many users reading your post have no idea how you think like they have no idea why recompiling all dependencies is not desired for you. As you said recompiling all dependencies is of course good idea and people do it by default in almost all cases - at least those I am aware of. However if for some reason you don’t want to compile all dependencies then you can simply recompile just one.
You need to improve your documentation research skills. What’s may be interesting is
mix helptask which lists all tasks available andmix help task.namewhich shows the documentation for said task. I believe thatdeps.compileis obvious naming, so there is no need to describe what it does. Finally the documentation inmix help deps.compileshould be enough clear for you.Personally I recommend reading documentation a lot. Of course not to remember everything, but to more or less know where you can find some information and also you may find lots of interesting things that would be helpful for you now or in near future and you were just was not aware of their existence. The common mistake is to not read
Erlangdocumentation assuming thatElixircore is all what you need. For example I have found:erlang.term_to_binary/1and:erlang.binary_to_term/1very useful. This is pretty basic and simple to understand thing new developers have completely no idea about.Edit: As @kokolegorille said firstly you need to fix the problem with your
Elixirinstallation. After this you can usemix deps.compileto recompile only those dependencies you want.nahoj
After some further debugging it seems luerl might be the issue. When I pin it to 1.1.0 I have no issue.
kokolegorille
How did You install Elixir and Erlang? With asdf?
You have an Elixir version for OTP24, but You have OTP25
You need to change the Elixir version to be OTP 25
Latest for now is OTP 26…
tj0
This is a rather curious problem. I could not re-create it with luerl 1.0 as given in the repo. And I added luerl 1.0 to one of my own projects without error.
Did you download a pre-compiled luerl from somewhere @nahoj ? The only other way I can think this might happen is that you installed erlang, tried luerl. Upgraded something installing elixir. And then ran into this problem.
nahoj
Hey, I did not download luerl from somewhere. I use asdf to manage elixir/erlang.
In the mix.lock file it is version 1.1.1, I should have had the same in mix.exs.
I’m also unable to re-create this with luerl 1.0.
tj0
Hmmm…that makes sense. So the only logical explanation I can think of is if you installed multiple versions of erlang or elixir? Otherwise, I have no idea how this could possibly occur.
Edit: Also, I’m super-curious how you ended up on luerl as a starting point as a newcomer to Elixir/Erlang?
Eiji
You need to use an
Elixirversion with-otp-25suffix if you useErlangversion25.LostKobrakai
While it’s certainly to be preferred that’s not completely correct. You need that for elixir to integrate with OTP 25 features, but using an elixir version compiled with an older otp version should generally work.
Eiji
Should work or maybe could work? Should sounds like it’s supported and therefore such behaviour looks like a bug. I guess it could work, but since it’s not supported it’s recommended to make an update in order to avoid such problems now and in the future.
dimitarvp
Should, yes, but I’d never recommend it.