M1芯片MacOS 12(Monterey)系统Kivy安装与运行问题求助
M1芯片Mac升级Monterey后Kivy无法使用解决方案
根因说明
Kivy.app内置的虚拟环境绑定了旧版本系统的Python路径,升级Monterey后系统Python框架、路径发生变更,虚拟环境指向失效,因此触发ImportError: No module named site报错。
方案1:原生pip安装M1适配版Kivy(推荐)
当前Kivy官方已发布适配M1架构的安装包,无需依赖第三方Kivy.app,操作步骤如下:
- 关闭终端的「使用Rosetta打开」选项,重启终端后执行
arch,确认返回arm64 - 安装Kivy依赖组件:
brew install sdl2 sdl2_image sdl2_ttf sdl2_mixer gstreamer - 升级pip到最新版本:
pip3 install --upgrade pip - 直接安装Kivy:
pip3 install kivy - 验证安装:执行
python3 -c "import kivy",无报错即为安装成功,后续运行代码直接使用python3 文件名.py即可。
方案2:修复现有Kivy.app
如果需要保留拖拽运行功能,可按以下步骤操作:
- 右键点击应用程序中的Kivy.app,选择「显示包内容」
- 依次进入
Contents/Resources/venv/bin目录,打开activate文件 - 修改
VIRTUAL_ENV变量值为绝对路径:VIRTUAL_ENV="/Applications/Kivy.app/Contents/Resources/venv" - 保存文件后执行命令重建虚拟环境关联:
cd /Applications/Kivy.app/Contents/Resources/venv && python3 -m venv --upgrade . - 重启终端后即可正常使用原有kivy命令和拖拽运行功能。
如果修复后仍存在兼容性问题,建议优先使用方案1的原生安装方式,后续系统升级适配性更强。
内容的提问来源于stack exchange,提问作者Naraxus
相关产品推荐
相关产品推荐

