asdf-erlang icon indicating copy to clipboard operation
asdf-erlang copied to clipboard

MacOS Big Sur + Erlang 22.3 + AutoConf -> cannot find required auxiliary files: install-sh config.guess config.sub

Open thbar opened this issue 3 years ago • 13 comments

I have upgraded my OS yesterday and wanted to re-install Erlang 22.3.4.12.

It fails with the error configure: error: cannot find required auxiliary files: install-sh config.guess config.sub (full logs at https://gist.github.com/thbar/f2e0a503437c87816feb0b18e11d36a2).

I have tried KERL_CONFIGURE_OPTIONS=--disable-debug --without-javac and the required dependencies are I believe installed.

I've noticed that autoconf is at version 2.71, mentioning this since an issue on Arch (https://github.com/asdf-vm/asdf-erlang/issues/189), I wonder if this is the same but haven't downgraded autoconf with homebrew yet (I have to verify the correct way to do this).

It is interesting that Erlang 23 will install properly, on the other hand.

I hoped to benefit from the precompiled binaries available since #190, but apparently the compilation kicks in.

thbar avatar Apr 08 '21 14:04 thbar

Related conversation at https://elixirforum.com/t/erlang-otp-22-3-4-17-released

thbar avatar Apr 08 '21 14:04 thbar

i solved this issue by uninstalling autoconf with homebrew then manually installing autoconf 2.69 with

curl -O http://ftp.gnu.org/gnu/autoconf/autoconf-2.69.tar.gz
tar zxvf autoconf-2.69.tar.gz
cd autoconf-2.69
./configure && make && sudo make install

kylesmith13 avatar Apr 08 '21 17:04 kylesmith13

i solved this issue by uninstalling autoconf with homebrew then manually installing autoconf 2.69 with

curl -O http://ftp.gnu.org/gnu/autoconf/autoconf-2.69.tar.gz
tar zxvf autoconf-2.69.tar.gz
cd autoconf-2.69
./configure && make && sudo make install

Works for me as well on:

  • MacOS Big Sur (11.2.3)
  • Xcode 12.4
  • Erlang 21.0.5, 23.3.1

where previously for 21.0.5, I have the following errors:

configure: error: cannot find required auxiliary files: config.guess config.sub
configure: error: ./configure failed for snmp/.
configure: error: /Users/kai/.asdf/plugins/erlang/kerl-home/builds/asdf_21.0.5/otp_src_21.0.5/lib/configure failed for lib

where 23.3.1 works for me without downgrading autoconf from 2.71 to 2.69.

kw7oe avatar Apr 09 '21 08:04 kw7oe

I had similar issues with 22.3.1. Running the install with the ERLANG_OPENSSL_PATH environment variable fixed it. e.g. ERLANG_OPENSSL_PATH="/usr/local/opt/openssl" asdf install erlang 22.3.1

Catharz avatar Apr 14 '21 07:04 Catharz

For y'all Mac users, I hacked my way to a solution for OTP 21, which has the same problem...

  1. use Homebrew to install => brew install erlang@21, which gets installed into /usr/local/Cellar/erlang@21

  2. Move the Homebrew install to the asdf directory => mv /usr/local/Cellar/erlang@21/21.3.8.21 $HOME/.asdf/installs/erlang

  3. Find all of the erlang shims in ~/.asdf/shims & add this under the shebang (I put on line 2 above # asdf-plugin: erlang 23.3.1) => # asdf-plugin: erlang 21.3.8.21

    #!/usr/bin/env bash
    # asdf-plugin: erlang 21.3.8.21
    # asdf-plugin: erlang 23.3.1
    exec /usr/local/opt/asdf/bin/asdf exec "erl" "$@"
    
    
  4. Feel dirty for such a hack job, but use the money you made from work to buy a shot of tequila to feel better & get on with your life.

devoutsalsa avatar Apr 19 '21 22:04 devoutsalsa

Anyone else having the issue with erlang 23?

=== Running configure in /Users/Dylan/.asdf/plugins/erlang/kerl-home/builds/asdf_23.2.1/otp_src_23.2.1/make ===
./configure '--enable-darwin-64bit' '--with-ssl=/usr/local/opt/[email protected]' '--prefix=/Users/Dylan/.asdf/plugins/erlang/kerl-home/builds/asdf_23.2.1/release_23.2.1' --disable-option-checking --cache-file=/dev/null --srcdir="/Users/Dylan/.asdf/plugins/erlang/kerl-home/builds/asdf_23.2.1/otp_src_23.2.1/make"
configure: error: cannot find required auxiliary files: install-sh config.guess config.sub

dylan-chong avatar Apr 26 '21 23:04 dylan-chong

@kylesmith13 Where did you install autoconf manually?

EDIT: Oh it actually works just installing autoconf in any directory. Which you seem to be able to delete after wards

dylan-chong avatar Apr 26 '21 23:04 dylan-chong

I manually edited the autoconf formula to install autoconf 2.69 with brew. Here's a gist with it: https://gist.github.com/oriolgual/2f881fa3a151dd5f643f755ddcf2a0bc

oriolgual avatar May 02 '21 07:05 oriolgual

My workaround, without removing or overwriting my existing copy of autoconf.

Extract it, configure using $PWD as the prefix, add $PWD/bin to your PATH, then install Erlang:

curl -O -L http://ftpmirror.gnu.org/autoconf/autoconf-2.69.tar.gz
tar -xzf autoconf-2.69.tar.gz
cd autoconf-2.69
./configure --prefix $PWD
make
PATH="$PWD/bin:$PATH" asdf install erlang 23.1.1

sigwinch28 avatar May 19 '21 14:05 sigwinch28

I manually edited the autoconf formula to install autoconf 2.69 with brew. Here's a gist with it: https://gist.github.com/oriolgual/2f881fa3a151dd5f643f755ddcf2a0bc

There is a specific formulae for this so you can just execute

brew install [email protected] && \
brew link --overwrite [email protected] && \
autoconf -V

spencerdcarlson avatar May 26 '21 20:05 spencerdcarlson

i solved this issue by uninstalling autoconf with homebrew then manually installing autoconf 2.69 with

curl -O http://ftp.gnu.org/gnu/autoconf/autoconf-2.69.tar.gz
tar zxvf autoconf-2.69.tar.gz
cd autoconf-2.69
./configure && make && sudo make install

I had the same issue after upgrading an elixir application first to erlang 23.3.4.3 and elixir 1.12.1 and then downgrading again to erlang 22.3.4.12 elixir 1.10.4. This solution did not work for me.

What worked however was:

asdf plugin remove erlang
asdf plugin add erlang 
asdf reshim erlang 22.3.4.12 # <- probably not needed
asdf install erlang 22.3.4.12
asdf install elixir 1.10.4

Hope that helps someone.

ospaarmann avatar Jun 17 '21 11:06 ospaarmann

initially having the same issue after updating to BigSur 11.4 and updating cli for xcode and brew upgrade

configure: error: cannot find required auxiliary files: install-sh config.guess config.sub ERROR: /Users/lambert/.asdf/plugins/erlang/kerl-home/builds/asdf_22.0.7/otp_src_22.0.7/make/configure failed!

tried the workaround as described above (using autoconf 2.69). but am getting another issue when trying to build erlang 22.0.7.

/Users/lambert/.asdf/plugins/erlang/kerl-home/builds/asdf_22.0.7/otp_src_22.0.7/make/otp_subdir.mk:29: warning: ignoring old commands for targetclean' === Entering application hipe ERLC ../ebin/hipe_consttab.beam ERLC ../ebin/hipe_gensym.beam /bin/sh: line 1: 52264 Segmentation fault: 11 erlc -W +debug_info -Werror +warn_export_vars +warn_missing_spec +warn_untyped_record -o../ebin hipe_consttab.erl /bin/sh: line 1: 52265 Segmentation fault: 11 erlc -W +debug_info -Werror +warn_export_vars +warn_missing_spec +warn_untyped_record -o../ebin hipe_gensym.erl make[3]: *** [../ebin/hipe_gensym.beam] Error 139 make[3]: *** Waiting for unfinished jobs.... make[3]: *** [../ebin/hipe_consttab.beam] Error 139 make[2]: *** [opt] Error 2 make[1]: *** [opt] Error 2 make: *** [secondary_bootstrap_build] Error 2`.

full log here otp_build_22.0.7.log

attempting to build 24.0.2 fails but throws a different error === Entering application parsetools ERLC ../ebin/leex.beam ERLC ../ebin/yeccparser.beam ERLC ../ebin/yecc.beam ERLC ../ebin/yeccscan.beam /bin/sh: line 1: 86901 Abort trap: 6 erlc -W -Werror +debug_info -DUSE_ESOCK=true -I/Users/lambert/.asdf/plugins/erlang/kerl-home/builds/asdf_24.0.2/otp_src_24.0.2/lib/stdlib/include -Werror -o../ebin yeccparser.erl /bin/sh: line 1: 86902 Abort trap: 6 erlc -W -Werror +debug_info -DUSE_ESOCK=true -I/Users/lambert/.asdf/plugins/erlang/kerl-home/builds/asdf_24.0.2/otp_src_24.0.2/lib/stdlib/include -Werror -o../ebin yecc.erl /bin/sh: line 1: 86903 Abort trap: 6 erlc -W -Werror +debug_info -DUSE_ESOCK=true -I/Users/lambert/.asdf/plugins/erlang/kerl-home/builds/asdf_24.0.2/otp_src_24.0.2/lib/stdlib/include -Werror -o../ebin yeccscan.erl /bin/sh: line 1: 86900 Abort trap: 6 erlc -W -Werror +debug_info -DUSE_ESOCK=true -I/Users/lambert/.asdf/plugins/erlang/kerl-home/builds/asdf_24.0.2/otp_src_24.0.2/lib/stdlib/include -Werror -o../ebin leex.erl make[3]: *** [../ebin/yeccscan.beam] Error 134 make[3]: *** Waiting for unfinished jobs.... make[3]: *** [../ebin/yeccparser.beam] Error 134 make[3]: *** [../ebin/yecc.beam] Error 134 make[3]: *** [../ebin/leex.beam] Error 134 make[2]: *** [opt] Error 2 make[1]: *** [opt] Error 2 make: *** [secondary_bootstrap_build] Error 2

otp_build_24.0.2.log

anyone else experience this?

  • MacOS Big Sur (11.4)
  • Xcode 12.5
  • all dependencies have been installed.

lamboap avatar Jun 20 '21 13:06 lamboap

@lamboap I'm seeing the same issue as you building 24.0.2. Were you ever able to solve it?

karmajunkie avatar Sep 27 '21 18:09 karmajunkie