Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Mac OS Sonoma, M1: erlang 26.2.1 error - ld: symbol(s) not found for architecture arm64 #306

Open
belgoros opened this issue Apr 2, 2024 · 0 comments

Comments

@belgoros
Copy link

belgoros commented Apr 2, 2024

otp_build_26.2.1.log
I have the following working versions installed on macOS, M1:

~ asdf list elixir
 *1.15.6-otp-25
  1.16.0-otp-25
  1.16.2-otp-26

~ asdf list erlang
 *25.3.2.6
  26.2.3

Following the docs, I run:

 ~ export KERL_CONFIGURE_OPTIONS="--disable-debug --without-javac"~ asdf install erlang 26.2.1

which raised the following error:

asdf_26.2.1 is not a kerl-managed Erlang/OTP installation
The asdf_26.2.1 build has been deleted
Extracting source code
Building Erlang/OTP 26.2.1 (asdf_26.2.1), please wait...
APPLICATIONS DISABLED (See: /Users/serguei/.asdf/plugins/erlang/kerl-home/builds/asdf_26.2.1/otp_build_26.2.1.log)
 * jinterface     : Java compiler disabled by user
 * odbc           : ODBC library - link check failed

Build failed.
      _gen_digest in libei.a[2](ei_connect.o)
      _recv_challenge_ack in libei.a[2](ei_connect.o)
      _recv_challenge_ack in libei.a[2](ei_connect.o)
      ...
ld: symbol(s) not found for architecture arm64
clang: error: linker command failed with exit code 1 (use -v to see invocation)
make[3]: *** [/Users/serguei/.asdf/plugins/erlang/kerl-home/builds/asdf_26.2.1/otp_src_26.2.1/lib/erl_interface/bin/aarch64-apple-darwin23.3.0/erl_call] Error 1
make[2]: *** [opt] Error 2
make[1]: *** [opt] Error 2
make: *** [erl_interface] Error 2

Please see /Users/serguei/.asdf/plugins/erlang/kerl-home/builds/asdf_26.2.1/otp_build_26.2.1.log for full details.

I tried to find a solution looking for different threads, but still no success.
See the attached log file for more details.

Actually, the only solution I came to was to uninstall the 26.2.3 erlang version and its elixir related one, then reinstalling 26.2.1 version followed by the 1.16.0-otp-26. Then following the advice by José Valim, run mix archive.install github hexpm/hex branch latest.
Once it's done, CD into the project directory, check the elixir version is correct and run mix deps.get. This way it worked.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant