Unexpected output of ‘arch’ on OSX (using Mac M1 installing elastic beans)

Each Answer to this Q is separated by one/two green lines.

when trying to install elastic beans on MacBook Air M1, using the following:

% ./aws-elastic-beanstalk-cli-setup/scripts/bundled_installer

as guidelines shown here:
https://github.com/aws/aws-elastic-beanstalk-cli-setup

I get the following error:


5. Installing Python 3.7.2. This step may take a few minutes
************************************************************
python-build: use openssl from homebrew
python-build: use readline from homebrew
Downloading Python-3.7.2.tar.xz...
-> https://www.python.org/ftp/python/3.7.2/Python-3.7.2.tar.xz
Installing Python-3.7.2...
python-build: use readline from homebrew

BUILD FAILED (OS X 11.1 using python-build 20180424)

Inspect or clean up the working tree at /var/folders/2v/7tdwpjsd3jzdw75jmp2n5trh0000gn/T/python-build.20201225141032.70517
Results logged to /var/folders/2v/7tdwpjsd3jzdw75jmp2n5trh0000gn/T/python-build.20201225141032.70517.log

Last 10 log lines:
checking size of _Bool... 1
checking size of off_t... 8
checking whether to enable large file support... no
checking size of time_t... 8
checking for pthread_t... yes
checking size of pthread_t... 8
checking size of pthread_key_t... 8
checking whether pthread_key_t is compatible with int... no
configure: error: Unexpected output of 'arch' on OSX
make: *** No targets specified and no makefile found.  Stop.
   Exiting due to failure

Thank you for helping!!!

None of the above worked for me. I installed both brew for Apple Silicon and Intel:

arch -x86_64 /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"

And then installed pyenv from:

/usr/local/Homebrew/bin/brew install pyenv
/usr/local/Homebrew/bin/brew link pyenv
arch -x86_64 pyenv install 3.8.9

And that worked

Edit

As Cheesus points in the comments, seem the only thing to do is the last line:

arch -x86_64 pyenv install 3.8.9

I also just switched to an M1, and I also got the same error. (coming from pyenv install 3.8.9.)

Installing 3.8.10 worked for me. They mention the M1 specifically on the 3.8.10 releases page, so maybe something had to be sorted out:

Python 3.8.10 ships two installers: the default 64-bit-only that works on macOS 10.9 (Mavericks) and later systems, and an experimental “universal2” installer for macOS 11 (Big Sur) and later

(This is if you need 3.8x for whatever reason. They’re on 3.9.x right now.)

The arch command can be used to run specific commands via Rosetta:

arch -x86_64 ./aws-elastic-beanstalk-cli-setup/scripts/bundled_installer

Run the terminal using Rosetta – a translation process that allows users to run apps that contain x86_64 instructions on Apple silicon.

To do so –

  1. command+space, type: Utilities => will get you to the utilities folder
  2. duplicate the terminal app – call it terminal_x86
  3. terminal_x86 => get info, mark open using Rosetta

For those who are managing python version using pyenv.
This worked for me on mac M1.

CC=/opt/homebrew/bin/gcc-11 arch -x86_64 pyenv install 3.8.6

easiest solution is just use brew to install ebcli.
brew install awsebcli.
it will handle all the weird mac related variations for you

https://docs.aws.amazon.com/elasticbeanstalk/latest/dg/eb-cli3-install-osx.html

If you’re here not because of elastic beans, but because of pyenv and you’re also getting the error Unexpected output of 'arch' on OSX then try installing a later/different version of python. I experienced this when installing 3.7.0, but installing 3.7.12 worked for me.

If you are using pyenv to manage python in your machine. Did you already try this:

pyenv install --patch 3.8.6 <<(curl -sSL https://raw.githubusercontent.com/Homebrew/formula-patches/113aa84/python/3.8.3.patch\?full_index\=1)

like was related here:
https://github.com/pyenv/pyenv/issues/1768#issuecomment-753756051

If you having the same problem after running the code above try:

softwareupdate --all --install --force
sudo rm -rf /Library/Developer/CommandLineTools
sudo xcode-select --install

like was related here:
https://github.com/pyenv/pyenv/issues/2201#issuecomment-1001597344

Them:

https://raw.githubusercontent.com/Homebrew/formula-patches/113aa84/python/3.8.3.patch\?full_index\=1)

This is how I solved it on my Macbook air M1.


The answers/resolutions are collected from stackoverflow, are licensed under cc by-sa 2.5 , cc by-sa 3.0 and cc by-sa 4.0 .