MacOS M1/M2/M3芯片如何安装Python3.6

该文章已生成可运行项目,

前言

Mac电脑M芯片安装Python3.6报错。

一般情况下,Mac系统可以使用homebrew来管理安装软件。
brew search搜索发现,最低只能直接安装python@3.7版本。

于是从Python官网下载安装包进行安装,确实也没有报错,安装完成后执行总是killed,不能正常使用。

下载源码编译也不行。

直接使用pyenv版本管理工具进行安装也是提示编译错误。

解决方法

问题的根本原因是:系统安装的openssl版本过高导致。
按照一下步骤可以解决问题:

#Install Rosetta
/usr/sbin/softwareupdate --install-rosetta --agree-to-license

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

# Set up x86_64 homebrew and pyenv and temporarily set aliases
alias brew86="arch -x86_64 /usr/local/bin/brew"
alias pyenv86="arch -x86_64 pyenv"

# Install required packages and flags for building this particular python version through emulation
brew86 install pyenv gcc libffi gettext
# 注意一定要安装正确的openssl版本,后续指定的PYTHON_BUILD_HOMEBREW_OPENSSL_FORMULA情况下,pyenv安装也会自动安装
brew86 install openssl@1.1
# -------------- change to openssl@1.1 here and others as well ----------+#                                                             ↓
export CPPFLAGS="-I$(brew86 --prefix libffi)/include -I$(brew86 --prefix openssl@1.1)/include -I$(brew86 --prefix readline)/lib"
export CFLAGS="-I$(brew86 --prefix openssl@1.1)/include -I$(brew86 --prefix bzip2)/include -I$(brew86 --prefix readline)/include -I$(xcrun --show-sdk-path)/usr/include -Wno-implicit-function-declaration" 
export LDFLAGS="-L$(brew86 --prefix openssl@1.1)/lib -L$(brew86 --prefix readline)/lib -L$(brew86 --prefix zlib)/lib -L$(brew86 --prefix bzip2)/lib -L$(brew86 --prefix gettext)/lib -L$(brew86 --prefix libffi)/lib"

# Providing an incorrect openssl version forces a proper openssl version to be downloaded and linked during the build
export PYTHON_BUILD_HOMEBREW_OPENSSL_FORMULA=openssl@1.1

# Install Python 3.6.4
pyenv86 install 3.6.4

安装完后可以在目录下设置版本pyenv local 3.6.4,效果如下图
在这里插入图片描述

参考资料

  1. install-python-3-6-on-mac-m1
本文章已经生成可运行项目
<think>好的,我现在需要解决用户在Mac上遇到的Python启动被kill的问题,具体提示是“zsh: killed ./python3”。首先,我得分析可能的原因,然后一步步给出解决方案。 首先,用户提到使用的是Python 3.6,并且引用了安装过程相关的引用[3]。可能的问题可能出在Python安装不完整或者损坏。另外,引用[1]提到执行时出现killed,可能是因为系统安全设置阻止了运行,比如macOS的Gatekeeper或者签名问题。 接下来,我需要考虑其他可能性。例如,内存不足可能导致进程被系统终止,但Python启动通常不需要太多内存,所以可能性较低。另外,文件权限问题也可能导致无法执行,需要检查python3文件的权限是否正确。 查看用户提供的引用[4]提到了字体服务进程,这可能不相关,但需要排除其他系统服务冲突的可能性。不过更可能的是Python本身的问题。 解决方案方面,首先应该重新安装Python 3.6,确保安装包来自官网且完整。引用[3]中提到了通过官网下载安装,可能需要验证安装步骤是否正确。另外,使用Homebrew安装Python可能更可靠,但用户已经安装3.6版本,可能需要检查路径是否正确。 另一个可能是签名问题,macOS可能阻止未签名的应用运行。可以尝试禁用Gatekeeper,使用命令sudo spctl --master-disable,但需要注意安全性。或者重新签名Python可执行文件,不过这可能比较复杂。 检查文件权限,确保python3有执行权限,使用chmod +x命令。另外,检查是否安装了冲突的软件或安全软件阻止执行。 最后,如果所有方法无效,考虑升级到更高版本的Python,可能3.6存在兼容性问题,尤其是较新的macOS版本可能不再支持旧版Python。 在回答时,需要按照用户要求的结构,分步骤说明,并引用相关的引用来源。同时生成相关问题,帮助用户深入理解可能的相关问题。</think>针对Python启动被kill的问题,以下是分步解决方案: ### 1. 验证Python安装完整性 首先检查Python 3.6安装是否完整: ```bash # 查看安装路径是否存在 ls /Library/Frameworks/Python.framework/Versions/3.6/bin # 尝试手动运行解释器 /Library/Frameworks/Python.framework/Versions/3.6/bin/python3 -c "print(&#39;test&#39;)" ``` 若提示`killed`,可能是安装包损坏。建议从[Python官网](https://www.python.org/downloads/)重新下载安装[^3] ### 2. 检查系统安全限制 macOS可能阻止未验证的开发者程序: ```bash # 临时禁用Gatekeeper sudo spctl --master-disable # 给Python添加执行权限 sudo chmod +x /Library/Frameworks/Python.framework/Versions/3.6/bin/python3 ``` ### 3. 检查依赖项完整性 ```bash # 使用brew检查系统依赖 brew doctor # 重新链接可能缺失的库 brew link --overwrite python ``` ### 4. 尝试替代安装方式 使用Homebrew安装Python更可靠: ```bash # 先安装Homebrew /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)" # 通过brew安装Python brew install python@3.6 ``` ### 5. 检查系统日志 ```bash # 查看崩溃日志 console.app → 用户诊断报告 → 查找Python相关崩溃日志 # 或使用命令行 grep -i &#39;killed&#39; /var/log/system.log ``` ### 6. 升级Python版本(终极方案) Python 3.6已于2021年停止维护,建议升级: ```bash brew install python@3.9 echo &#39;export PATH="/usr/local/opt/python@3.9/bin:$PATH"&#39; >> ~/.zshrc ```
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值