Can't install older version of Erlang (v 23.2) on MacOS 13.1

Hello guys,

I have a project that uses Erlang 23.2.7
When I run asdf install it gives me this:

❯ asdf install
asdf_23.2.7 is not a kerl-managed Erlang/OTP installation
The asdf_23.2.7 build has been deleted
Extracting source code
Building Erlang/OTP 23.2.7 (asdf_23.2.7), please wait...

It get’s stuck on patch step for hours

My asdf info

❯ asdf info
Darwin Nikola-MacBook-Pro.local 22.2.0 Darwin Kernel Version 22.2.0: Fri Nov 11 02:03:51 PST 2022; root:xnu-8792.61.2~4/RELEASE_ARM64_T6000 arm64

zsh 5.8.1 (x86_64-apple-darwin22.0)



elixir              master 1693b35
erlang              master 0d402e6
nodejs              master c9e5df4
rebar               master 4af0770

I’ve tried with flag bellow but with no success. Help :smiling_face_with_tear:

export KERL_CONFIGURE_OPTIONS="--without-javac --with-ssl=$(brew --prefix openssl@1.1) --with-odbc=$(brew --prefix unixodbc)"

try a similar newer erlang version eg asdf install erlang there shouldn’t be much/any practical difference…

if you absolutely need 23.2 then go for asdf install erlang

It doesn’t help, it’s still stuck on asdf(patch) step.

I am not sure what’s wrong but from what I managed to figure out by Googling it has to do something with SSL. But I’m not familiar with macOS at all and it works properly for newer versions of Erlang/Elixir.

This may be tricky, since OS X changed its version of openssl after OTP 23 was released. Have you tried running the project with a newer OTP version locally?

Trying that right now…:pensive:
I’m progressively increasing Elixir and Erlang versions to see from where it will work :man_shrugging:t2:

Ok so from what I concluded OTP versions bellow 24 (that use SSL 1.1) are not working with asdf install I tried to link brew link openssl@1.1 but it gave me warning that scared me off from that idea… :grin:

So I had to install it with brew and cp -r with asdf reshim erlang to get it to work but it feels like an ugly solution. I don’t know why it works on brew but not asdf :man_shrugging:t2:

Okay found the solution and after that with export CFLAGS="-O2 -g -fno-stack-check -Wno-error=implicit-function-declaration" and some other flags (like compile docs for erlang) managed to get everything working. :smile: