自從 Apple Silicon 上市時 Python 3.8 發布大約一年以來,針對 osx-arm64 的 Python 3.7 構建從未成為 Conda Forge 常規構建矩陣的一部分。
解決方法:模擬
在 Apple Silicon 系統上使用 3.7 的直接替代方案是使用 Rosetta 模擬 x86_64 或使用容器系統,例如 Docker。
與在x86_64 電腦上執行win-32 環境類似,可以建立osx-64 環境,例如
## create empty environment conda create -n py37 ## activate conda activate py37 ## use x86_64 architecture channel(s) conda config --env --set subdir osx-64 ## install python, numpy, etc. (add more packages here...) conda install python=3.7 numpy
⚠️重要提示:在安裝軟體包之前,請務必啟動此環境。否則,預設的 CONDA_SUBDIR 值 (osx-arm64) 可能處於活動狀態,並可能導致在相同環境中混合架構。
請注意,MacOS 將自動識別架構並運行 Rosetta(安裝後) - 無需執行任何特殊操作。
透過 YAML 環境定義,可以使用 CONDA_SUBDIR環境變數用於在建立環境時臨時設定平台。同樣,仍然應該在建立後立即設定特定於環境的子目錄選項。
## create environment from YAML CONDA_SUBDIR=osx-64 conda env create -n py37 -f py37.yaml ## activate conda activate py37 ## use x86_64 architecture channel(s) conda config --env --set subdir osx-64
從長遠來看,您可以嘗試請求python-feedstock 包括 osx-arm64 的 3.7 版本。然而,3.7.12(2021 年 9 月)在技術上是最終的功能版本,現在已進入僅維護階段(請參閱 PEP 537)。此外,構建特定於 Python 版本的變體的其他套件不會為 osx-arm64 構建,因此即使有 python=3.7,這些套件也不會在那裡(至少不會通過 Conda)。基本上,我不會打賭有人會接受這個。
以上是如何在 Apple Silicon (OSX-ARM64) 電腦上安裝 Python 3.7?的詳細內容。更多資訊請關注PHP中文網其他相關文章!