I'm trying to get tensorflow working on my MacBook pro M1. However, I keep getting the following error when trying to import: zsh: illegal hardware instruction python
I have downloaded and installed tensorflow via this link.
These were my installation steps:
python3 -m venv venv
.install_venv.sh
(which is located within the downloaded folder) file to the terminal, add -p
at the end.import tensorflow as tf
.I'm using Python 3.8.2.
I've seen some tutorials where this exact method does work, so I don't know what's the issue here.
Python3 is shipped with 2 architectures in M1.
$ file $(which python3)
# If you installed python through Homebrew or Anaconda, deactivate your conda env, then run this line instead:
# $ file $(which /usr/bin/python3)
/usr/bin/python3: Mach-O universal binary with 2 architectures: [x86_64:Mach-O 64-bit executable x86_64] [arm64e:Mach-O 64-bit executable arm64e]
/usr/bin/python3 (for architecture x86_64): Mach-O 64-bit executable x86_64
/usr/bin/python3 (for architecture arm64e): Mach-O 64-bit executable arm64e
Here, it's very important to specify which one to use. You can do this by installing the script like this:
arch -arm64 bash install_venv.sh my_tf_env
if you have multiple python installations, use:
arch -arm64 bash install_venv.sh --python=/usr/bin/python3 my_tf_env
You can replace my_tf_env
with any other name/path you choose.