我有带有 Apple M1 芯片的 Macbook,我必须在其中为我的项目使用 Python 3.6.5。它预装了 Python 2.7.16 和 3.8.2。我使用 brew
安装默认安装 3.9.1 的 Python。
所以,我尝试 了这个 自制程序来安装 3.6.5,但出现了以下错误:
checking for pthread_t... yes
checking size of pthread_t... 8
configure: error: Unexpected output of 'arch' on OSX
Do not report this issue to Homebrew/brew or Homebrew/core!
我尝试 pyenv install 3.6.5
,但失败并出现与上述类似的错误。 ePi272314 在这里 解释的使用 git commit 安装 python 的方法失败,因为自制软件不再支持它。
当我尝试使用 Rosetta 2 运行终端并安装 python 3.6.5 时,使用上述方法,我得到以下或其他一些编译错误:
Error: Cannot install in Homebrew under Rosetta 2 in ARM default prefix (/opt/homebrew)!
最后,我下载了 Python 3.6.5 的 dmg 文件并安装了它。它安装正常,在 /usr/local/bin/python3
作为 python3 安装可见,但它无法运行。
kxxxr@Kxxxns-MBP bin % where python3
/opt/homebrew/bin/python3
/Library/Frameworks/Python.framework/Versions/3.6/bin/python3
/opt/homebrew/bin/python3
/usr/local/bin/python3
/usr/bin/python3
kxxxr@Kxxxns-MBP bin % /opt/homebrew/bin/python3 --version
Python 3.9.1
kxxxr@Kxxxns-MBP bin % /usr/local/bin/python3 --version
zsh: killed /usr/local/bin/python3 --version
kxxxr@Kxxxns-MBP bin %
由 Python dmg 文件安装的空闲也无法运行(我有管理员权限)。
最后遇到了 这个 python 错误报告,它说错误正在为 Python 3.8、3.9 和 3.10 修复。显然,M1 芯片似乎不会正式支持旧版本。
我的问题是:
- 还有其他方法可以在 Mac M1 上使用 Python 3.6.5 吗?我错过了什么吗?
- 如果没有,请提及。我会接受这个作为答案。
提前致谢。
原文由 Kundan Kumar 发布,翻译遵循 CC BY-SA 4.0 许可协议
在 Rosetta 2 下安装的 Nix 可以解决问题。在运行下面的命令之前我什至没有安装它——请注意显示 Nix 在我请求时正在下载 Python 3.6 的消息。
以上(出于可重复性目的)是通过
nixpkgs
收集的,参考频道 https://nixos.org/channels/nixpkgs-20.09-darwin ,特别是实例sn5ycj9wkbdmyinvqyg9rn42sw71wqad-nixpkgs-20.09pre245572.f18fbc33930
。