Asdf-erlang: builds failing on OSX Catalina

Created on 7 Aug 2020  路  6Comments  路  Source: asdf-vm/asdf-erlang

erlang installs for OTP 22 & OTP 23 are faling

asdf install erlang 22.3.4.5                                                                                   
asdf_22.3.4.5 is not a kerl-managed Erlang/OTP installation
The asdf_22.3.4.5 build has been deleted
Extracting source code
Building Erlang/OTP 22.3.4.5 (asdf_22.3.4.5), please wait...
/Users/jeremyowens-boggs/.asdf/plugins/erlang/kerl: line 661: /Applications/Xcode.app/Contents/Developer/usr/bin/xcodebuild: No such file or directory
Build failed.
/Library/Developer/CommandLineTools/SDKs/MacOSX10.15.sdk/usr/include/netinet6/in6.h:212:30: note: previous declaration is here
extern const struct in6_addr in6addr_loopback;
                             ^
2 errors generated.
make[4]: *** [obj/x86_64-apple-darwin19.6.0/opt/smp/inet_drv.o] Error 1
make[4]: *** Waiting for unfinished jobs....
make[3]: *** [opt] Error 2
make[2]: *** [opt] Error 2
make[1]: *** [smp] Error 2
make: *** [emulator] Error 2

Please see /Users/xxxx/.asdf/plugins/erlang/kerl-home/builds/asdf_22.3.4.5/otp_build_22.3.4.5.log for full details.

The log states

...
 CC obj/x86_64-apple-darwin19.6.0/opt/smp/prim_buffer_nif.o
drivers/common/inet_drv.c:1481:30: error: static declaration of 'in6addr_any' follows non-static declaration
static const struct in6_addr in6addr_any = { { IN6ADDR_ANY_INIT } };
                             ^
/Library/Developer/CommandLineTools/SDKs/MacOSX10.15.sdk/usr/include/netinet6/in6.h:211:30: note: previous declaration is here
extern const struct in6_addr in6addr_any;
                             ^
drivers/common/inet_drv.c:1490:30: error: static declaration of 'in6addr_loopback' follows non-static declaration
static const struct in6_addr in6addr_loopback =
                             ^
/Library/Developer/CommandLineTools/SDKs/MacOSX10.15.sdk/usr/include/netinet6/in6.h:212:30: note: previous declaration is here
extern const struct in6_addr in6addr_loopback;
                             ^
2 errors generated.
make[4]: *** [obj/x86_64-apple-darwin19.6.0/opt/smp/inet_drv.o] Error 1
make[4]: *** Waiting for unfinished jobs....
make[3]: *** [opt] Error 2
make[2]: *** [opt] Error 2
make[1]: *** [smp] Error 2
make: *** [emulator] Error 2

Most helpful comment

Installing the full xcode did it, now works

asdf install erlang 22.3.4.5
asdf_22.3.4.5 is not a kerl-managed Erlang/OTP installation
The asdf_22.3.4.5 build has been deleted
Extracting source code
Building Erlang/OTP 22.3.4.5 (asdf_22.3.4.5), please wait...
Erlang/OTP 22.3.4.5 (asdf_22.3.4.5) has been successfully built
Installing Erlang/OTP 22.3.4.5 (asdf_22.3.4.5) in /Users/jeremyowens-boggs/.asdf/installs/erlang/22.3.4.5...
You can activate this installation running the following command:
. /Users/jeremyowens-boggs/.asdf/installs/erlang/22.3.4.5/activate
Later on, you can leave the installation typing:
kerl_deactivate
Cleaning up compilation products for 
Cleaned up compilation products for  under /Users/jeremyowens-boggs/.asdf/plugins/erlang/kerl-home/builds

Erlang 22.3.4.5 has been installed. Activate globally with:

    asdf global erlang 22.3.4.5

Activate locally in the current folder with:

    asdf local erlang 22.3.4.5

All 6 comments

For what it's worth:

macOS 10.15.6
xcodebuild -version: Xcode 11.6 Build version 11E708
asdf version: v0.7.8-4a3e3d6
KERL_CONFIGURE_OPTIONS='--disable-debug --without-javac --with-ssl=/usr/local/opt/[email protected]'

I think that's everything.

asdf install erlang 23.0.3 succeeded.

Installing the full xcode did it, now works

asdf install erlang 22.3.4.5
asdf_22.3.4.5 is not a kerl-managed Erlang/OTP installation
The asdf_22.3.4.5 build has been deleted
Extracting source code
Building Erlang/OTP 22.3.4.5 (asdf_22.3.4.5), please wait...
Erlang/OTP 22.3.4.5 (asdf_22.3.4.5) has been successfully built
Installing Erlang/OTP 22.3.4.5 (asdf_22.3.4.5) in /Users/jeremyowens-boggs/.asdf/installs/erlang/22.3.4.5...
You can activate this installation running the following command:
. /Users/jeremyowens-boggs/.asdf/installs/erlang/22.3.4.5/activate
Later on, you can leave the installation typing:
kerl_deactivate
Cleaning up compilation products for 
Cleaned up compilation products for  under /Users/jeremyowens-boggs/.asdf/plugins/erlang/kerl-home/builds

Erlang 22.3.4.5 has been installed. Activate globally with:

    asdf global erlang 22.3.4.5

Activate locally in the current folder with:

    asdf local erlang 22.3.4.5

@jeremy-postmates how did you install full xcode?

Via the app-store @bernardo-martinez

This did the trick for me (via https://github.com/asdf-vm/asdf-erlang/issues/116#issuecomment-538678768):

asdf-erlang has been updated to use kerl version 1.8.6. Can you try updating asdf-erlang and see if that fixes the problem? asdf plugin-update erlang should do the trick.

  • Delete archive of failed build from ~/.asdf/plugins/erlang/kerl-home/archives (not sure if this is necessary though)
  • asdf plugin-update erlang
  • asdf install erlang 22.3.4.12
Was this page helpful?
0 / 5 - 0 ratings