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
I’m working on a project that simulates the bumbl example in the programming phoenix book. It acts almost like an email client. We have a...
New
Hello,
I know there is an approach for handling lists that allows for optimized traversal, but I can’t recall the specific method (somet...
New
Documentation
While reading the Scoped Routes section, I noticed that the documentation currently refers to a problem without explainin...
New
Hi everyone,
I am toying with the idea of building a “match maker” for giving personal help to people that wants to start coding.
I sta...
New
So my question is quite simple and i have found no conclusive answer on forum, google or AI.
Should we use :erlang.float for Integer to ...
New
I recently noticed that Elixir’s Logger defaults its primary log level to :debug when no :logger, :level application configuration is pre...
New
I’m new to elixir and just tried to install the elixirLS extension for VScode(ium) and it is throwing some errors that I would like help ...
New
Other Trending Topics
Edit: 2026 May 15 - This post is archived.
Mob is alive!!
Main docs: mob v0.7.11 — Documentation
A bit of explanation for the slightly c...
New
Hey, I’m Jesse and I’m the main contributor behind Dexter, a full-featured, lightning-fast Elixir LSP optimized for large codebases. It s...
New
I am happy to introduce the very α version of the new programming language compiled to BEAM.
Welcome Cure.
It has literally three kille...
New
Hobbes is a low-level distributed database for the Elixir programming language.
Hobbes provides a simple, safe, and scalable storage lay...
New
Hi there! We created Gust: A task orchestrator inspired by Airflow.
For those who have never heard about Aiflow, it’s a Python-based wor...
New
Hi everyone!
The first release candidate for the Expert language server project is now available!
We’ve published a press release detai...
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
- #umbrella
- #full-time-contract
- #podcasts-by-brainlid
- #ecto-query
- #ai
- #elixirconf-us
- #blog-post
- #elixir-ls
- #phoenix_html
- #iex
- #graphql
- #genstage
- #websockets
- #supervisor
- #advent-of-code
- #distillery
- #processes
- #api
- #forms
- #elixirconf-eu
- #metaprogramming
- #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.