Как я могу запустить Python 3.9.1 изначально на M1 Mac?

В настоящее время это кажется невозможным с Anaconda, а также с Xcode 12. В режиме ожидания он работает через Rosetta. Кажется, это не обсуждается, так что либо я довольно наивен, либо, может быть, это будет полезно и другим.

Python говорит: Начиная с версии 3.9.1, Python теперь полностью поддерживает сборку и работу на macOS 11.0 (Big Sur) и на компьютерах Apple Silicon Mac (на основе архитектуры ARM64). Новый вариант универсальной сборки, universal2, теперь доступен для поддержки как ARM64, так и Intel 64 в одном наборе исполняемых файлов https://docs.python.org/3/whatsnew/3.9.html

Пожалуйста, помогите новичку понять, как извлечь выгоду из его недавней импульсивной покупки.


person hithisispeter    schedule 04.01.2021    source источник


Ответы (4)


Теперь вы можете установить python 3.9.1 несколькими способами, но на данный момент (февраль 2021 г.) наиболее полная среда сборки для полного набора данных для python на архитектуре M1 ARM — через miniforge.

e.g.

brew install --cask miniforge
conda init zsh
conda activate
conda install numpy scipy scikit-learn
person climatebrad    schedule 09.02.2021
comment
Спасибо за ваш ответ. Вопрос про запуск нативно, а не через перевод Розетты. При запуске Python 3.9.1 на чипе ARM M1 процессы Python помечаются как «Архитектура Intel» в мониторе активности. Это похоже на проблему с компилятором. Как скомпилировать для работы на чипе ARM? Это происходит как через Anaconda, так и через Xcode 12. - person hithisispeter; 10.02.2021
comment
Я не уверен, как вы его настроили. доморощенный установщик правильно устанавливает ARM-версию миникузница на чипах М1. - person climatebrad; 12.02.2021
comment
Хорошо, это работает. Но проблема в том, что вам не разрешено использовать Anaconda в коммерческом контексте. :( Я надеюсь, что скоро это станет возможным благодаря обычной установке Python, чтобы я мог использовать свой Mac Pro в своей компании. - person ali; 03.03.2021
comment
Что означает «запрещено использовать анаконду в коммерческом контексте»? - person yts61; 16.04.2021

Теперь вы можете установить Python 3.9.4 на Mac M1 (Apple Silicon). Я использую pyenv для установки Python 3.7, 3.8 и 3.9, все родные ARM. Например, чтобы установить 3.9.4:

$ pyenv install 3.9.4
python-build: use [email protected] from homebrew
python-build: use readline from homebrew
Downloading Python-3.9.4.tar.xz...
-> https://www.python.org/ftp/python/3.9.4/Python-3.9.4.tar.xz
Installing Python-3.9.4...
python-build: use readline from homebrew
python-build: use zlib from xcode sdk
Installed Python-3.9.4 to /Users/squademy/.pyenv/versions/3.9.4

Полное руководство по установке pyenv и нескольких версий Python вы можете прочитать в этой статье: https://squademy.medium.com/install-python-on-macos-11-m1-apple-silicon-using-pyenv-12e0729427a9.

person Eugene    schedule 13.06.2021
comment
насколько стабилен хоумбрю на арм64? пс +1 за пиенв ???? - person grisaitis; 16.07.2021

Я использую python3.9.4. Я установил его, используя только доморощенный.

Я пытался установить панд от pip3 install pandas

Это заняло некоторое время, но оно было успешно установлено на моем M1 Macbook Pro.

Вот журнал

❯ pip3 install pandas

Collecting pandas
  Downloading pandas-1.2.4.tar.gz (5.5 MB)
     |████████████████████████████████| 5.5 MB 855 kB/s
  Installing build dependencies ... done
  Getting requirements to build wheel ... done
    Preparing wheel metadata ... done
Collecting numpy>=1.16.5
  Using cached numpy-1.20.2-cp39-cp39-macosx_11_0_arm64.whl
Collecting pytz>=2017.3
  Downloading pytz-2021.1-py2.py3-none-any.whl (510 kB)
     |████████████████████████████████| 510 kB 8.8 MB/s
Collecting python-dateutil>=2.7.3
  Downloading python_dateutil-2.8.1-py2.py3-none-any.whl (227 kB)
     |████████████████████████████████| 227 kB 10.5 MB/s
Requirement already satisfied: six>=1.5 in /opt/homebrew/lib/python3.9/site-packages (from python-dateutil>=2.7.3->pandas) (1.15.0)
Building wheels for collected packages: pandas
  Building wheel for pandas (PEP 517) ... /

done
  Created wheel for pandas: filename=pandas-1.2.4-cp39-cp39-macosx_11_0_arm64.whl size=9354006 sha256=87fead2b2cacdfdc448c444899dfffca3b82275635ac8d51a39790ede623e342
  Stored in directory: /Users/pks/Library/Caches/pip/wheels/1c/18/1d/96f6fb133a77724bc42fce621a44162d840d037b9289c4a874
Successfully built pandas
Installing collected packages: pytz, python-dateutil, numpy, pandas
Successfully installed numpy-1.20.2 pandas-1.2.4 python-dateutil-2.8.1 pytz-2021.1

person Prabhat Kumar Sahu    schedule 23.04.2021

Я обновился до 3.9.4

  1. Загрузите универсальный установщик Python — https://www.python.org/downloads/mac-osx/

Примечание. Мне все еще не удавалось установить sudo pip install mysqlclient.
Мне пришлось добавить в

  1. обновить доморощенный — см. https://brew.sh
  2. Добавьте /opt/homebrew/bin в PATH в .bash_profile (не забудьте указать источник .bash_profile) или добавьте /opt/homebrew/bin в PATH в .zprofile (не забудьте указать источник .zprofile) при использовании zsh
person C Wilke    schedule 26.04.2021
comment
предполагает ли это, что ваша оболочка bash, а не zsh? с изменением macos на zsh я подумал, что нам нужно обновить .zprofile, а не .bash_profile, сейчас. - person grisaitis; 19.05.2021
comment
Ты прав! Я использовал старые скрипты на bash, поэтому мне пришлось обновить bash_profile. Я обновил ответ, включив в него .zprofile. - person C Wilke; 11.07.2021