Fedora34安装python3-tkinter后导入PySimpleGUI报_tkinter缺失错误求助
Fedora 34 下 PySimpleGUI 导入报错解决方案
你的报错核心是当前使用的Python环境缺少tkinter底层模块支持,你通过dnf安装的python3-tkinter仅适配Fedora系统自带的Python3版本,报错日志显示你当前使用的是/usr/local/lib/python3.9/路径下的自行编译Python,系统源安装的tkinter包不会对其生效。
第一步:确认当前Python版本来源
执行命令:which python3
- 若输出为
/usr/bin/python3:属于系统自带Python,走下方方案1 - 若输出为
/usr/local/bin/python3:属于自行编译的Python,走下方方案2
方案1:系统自带Python适配修复
先验证系统Python的tkinter是否正常:/usr/bin/python3 -c "import tkinter; print('tkinter正常')"
如果无报错,直接用系统Python重新安装PySimpleGUI即可:/usr/bin/python3 -m pip install --user PySimpleGUI
后续运行你的代码时指定使用系统Python:/usr/bin/python3 你的脚本文件名.py
方案2:自行编译Python的tkinter支持修复
首先安装tk开发依赖包:sudo dnf install -y tk-devel tcl-devel
下载对应版本的Python3.9源码包,重新编译安装,编译配置阶段需添加--enable-tkinter参数,示例编译流程:
cd Python-3.9.x源码目录 ./configure --enable-optimizations --enable-tkinter make sudo make altinstall
编译完成后重新安装PySimpleGUI即可正常导入。
补充说明
如果你使用了Python虚拟环境,需保证创建虚拟环境的基础Python已完成tkinter支持配置,修复基础Python后重建虚拟环境即可。
内容的提问来源于stack exchange,提问作者MeblIkea
相关产品推荐
相关产品推荐

