joebb97

joebb97

I am following a summary of instructions to get elixir installed on M1 via the asdf VM on this stackoverflow post. I have tried a couple of different things related to Kerl environment variables to get the following to work

~ » asdf install erlang latest                                                                                                                        11:18:15
asdf_25.0.2 is not a kerl-managed Erlang/OTP installation
The asdf_25.0.2 build has been deleted
Extracting source code
Building Erlang/OTP 25.0.2 (asdf_25.0.2), please wait...
Build failed.
gmake[5]: Leaving directory '/Users/Joey/.asdf/plugins/erlang/kerl-home/builds/asdf_25.0.2/otp_src_25.0.2/lib/megaco/src/flex'
gmake[4]: *** [/Users/Joey/.asdf/plugins/erlang/kerl-home/builds/asdf_25.0.2/otp_src_25.0.2/make/run_make.mk:35: opt] Error 2
gmake[4]: Leaving directory '/Users/Joey/.asdf/plugins/erlang/kerl-home/builds/asdf_25.0.2/otp_src_25.0.2/lib/megaco/src/flex'
gmake[3]: *** [/Users/Joey/.asdf/plugins/erlang/kerl-home/builds/asdf_25.0.2/otp_src_25.0.2/make/otp_subdir.mk:29: opt] Error 2
gmake[3]: Leaving directory '/Users/Joey/.asdf/plugins/erlang/kerl-home/builds/asdf_25.0.2/otp_src_25.0.2/lib/megaco/src'
gmake[2]: *** [/Users/Joey/.asdf/plugins/erlang/kerl-home/builds/asdf_25.0.2/otp_src_25.0.2/make/otp_subdir.mk:29: opt] Error 2
gmake[2]: Leaving directory '/Users/Joey/.asdf/plugins/erlang/kerl-home/builds/asdf_25.0.2/otp_src_25.0.2/lib/megaco'
gmake[1]: *** [/Users/Joey/.asdf/plugins/erlang/kerl-home/builds/asdf_25.0.2/otp_src_25.0.2/make/otp_subdir.mk:29: opt] Error 2
gmake[1]: Leaving directory '/Users/Joey/.asdf/plugins/erlang/kerl-home/builds/asdf_25.0.2/otp_src_25.0.2/lib'
gmake: *** [Makefile:511: libs] Error 2

Showing Posts 1 to 6

asianfilm

asianfilm

The best guide I found for installing Erlang and Elixir on an M1 Mac with ASDF is this one by Yamazaki Susumu. I recommend it especially because it makes use of all CPU cores.

The guide is from December 2021, but it worked for me in February/March and I’ve been able to keep updating Erlang and Elixir within ASDF with all cores still firing, including the latest Erlang 25 release that gives a real speed boost to M1s with its JIT support.

hlx

hlx

This works for me:

$ KERL_CONFIGURE_OPTIONS="--disable-debug --disable-silent-rules --without-javac --enable-shared-zlib --enable-dynamic-ssl-lib --enable-threads --enable-kernel-poll --enable-wx --enable-webview --enable-darwin-64bit --enable-gettimeofday-as-os-system-time --with-ssl=/opt/homebrew/opt/openssl@3" asdf install erlang 25.0.2

❯ sysctl -a | grep machdep.cpu
machdep.cpu.cores_per_package: 10
machdep.cpu.core_count: 10
machdep.cpu.logical_per_package: 10
machdep.cpu.thread_count: 10
machdep.cpu.brand_string: Apple M1 Max

The options came from a tweet of Jose, one I cannot seem to find quickly

adamu

adamu

I wrote that Stack Overflow answer, and I can still build OTP 25 on an M1 Mac using those instructions.

There is not much info in the logs you provided. Is there not a more detailed log that tells you more information about whats going wrong?

My guess is you skipped a step listed in the make sure to read the "Before asdf install" point.

Actually I’m having problems myself recently building with asdf-erlang with KERL_BUILD_DOCS set, which I wrote about here. However, it works when I use kerl directly, not asdf. I wonder if your error is related? There could be an asdf bug.

Unfortunately building Erlang is a complex process and there are readmes to be read and choices to be made. The foolproof “just do this” ways are good until they break, then you’re back to reading readmes and setting environment variables anyway.

joebb97

joebb97 OP

I did my best to follow all the instructions there, and have double checked that I did have all those packages installed before running asdf install. I still get the same results. I will try the above linked article on dev.to and see if I have any luck.

cjbottaro

cjbottaro

About half my team is on M1 vs Intel Macs. I have never had a problem running Elixir/Erlang, but others have.

The problems range from asdf not installing, to Elixir compilation being very slow.

As someone else mentioned, this is what seemed to fix it for everyone:

$ echo $KERL_CONFIGURE_OPTIONS
--disable-debug --disable-silent-rules --enable-dynamic-ssl-lib --enable-hipe --enable-shared-zlib --enable-smp-support --enable-threads --enable-wx --with-ssl=/opt/homebrew/opt/openssl@1.1 --without-javac --enable-darwin-64bit --enable-kernel-poll --with-dynamic-trace=dtrace

Oh, I just remembered, there is an issue with exwidgets…
https://github.com/erlang/otp/issues/5893

ali

ali

I just setup erlang 25.0.3 and elixir 1.13.4 on my m1 mbp using asdf package manager without any issue. Observer works flawlessly.
There was an issue with wxwidgets 3.1.x which is now resolved in latest version 3.2.x
I followed following steps

brew install kerl
brew install wxwidgets

.kerlrc in ~

KERL_CONFIGURE_OPTIONS="--disable-debug --without-javac --enable-dynamic-ssl-lib --enable-shared-zlib --enable-hipe --enable-smp-support --enable-threads --enable-kernel-poll --with-wx"
KERL_BUILD_DOCS=yes

installed eralng and elixir

asdf install erlang 25.0.3
asdf global erlang 25.0.3

asdf install elixir 1.13.4-otp-25
asdf global elixir  1.13.4-otp-25
— All posts loaded —

Where Next? Top

Trending in Questions Top

water
I’m aware of 2 such projects, are there others? git: GitHub - team-alembic/realworld: A fullstack Phoenix LiveView application with back...
New
katta
I having some trouble figuring out if I have set myself too strict of standards for my production server. Currently I can handle 75% of r...
New
peck
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
bradley
I really like the adapter patterns that ecto, nebulex, waffle, etc. use and would love find something similar for a key management servic...
New
unaware8150
Hello folks! So at work, we are seeing some situations where we have to define some “fixed” strings that are used across the codebase in...
New
Alvinkariuki
How Can I Optimise Compile Time Dependencies I have been building an elixir application for about 2 years now. Many modules and files ha...
New
leoschweizer
Hi, we run different LLM models across a cluster, with each node loading a configurable subset. Model-specific queues let nodes consume ...
New

Other Trending Topics Top

budgie
A little off-topic, but I feel like people here have a good head on their shoulders. I used to be quite good at making software. Was luc...
New
KristerV
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
mudasobwa
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
jimsynz
Beam Bots (or just BB for short) is a framework for building fault-tolerant robotics applications in Elixir using familiar OTP patterns. ...
New
juhalehtonen
There has been a thread to discuss the Stack Overflow Developer Survey on this forum every year since 2018, so here’s yet another one for...
New
budgie
I love Elixir. It’s one of 2 programming languages I’ve ever fallen in love with. But I don’t use it anymore. Serverless was the promis...
New

We're in Beta

About us Mission Statement

Options

Thread Display Mode




Thread Preview

Skip Thread Previews