You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

M1 Mac环境下PySimpleGUI导入时栈溢出错误求助

解决M1 Mac上PySimpleGUI栈溢出错误

问题描述

在M1 Mac设备上使用PyCharm开发Python待办列表应用,导入PySimpleGUI时触发_Py_CheckRecursiveCall: Cannot recover from stack overflow致命Python错误。通过PyCharm内置包管理器重新安装模块后问题仍存在,期望程序正常运行并返回Process finished with exit code 0。

错误栈信息

Fatal Python error: _Py_CheckRecursiveCall: Cannot recover from stack overflow.
Python runtime state: initialized

Current thread 0x00000001d7a61c40 (most recent call first):
  File "<frozen importlib._bootstrap_external>", line 1381 in _get_spec
  File "<frozen importlib._bootstrap_external>", line 1414 in find_spec
  File "<frozen importlib._bootstrap>", line 925 in _find_spec
  File "<frozen importlib._bootstrap>", line 982 in _find_and_load_unlocked
  File "<frozen importlib._bootstrap>", line 1007 in _find_and_load
  File "<frozen importlib._bootstrap>", line 228 in _call_with_frames_removed
  File "<frozen importlib._bootstrap>", line 1058 in _handle_fromlist
  File "obf_Cleaned_PySimpleGUI50_source.py", line 674 in __GTIve4UA_from_global_variable
  File "obf_Cleaned_PySimpleGUI50_source.py", line 651 in __GTIve4UA
  File "obf_Cleaned_PySimpleGUI50_source.py", line 79 in __38ENUi
  File "obf_Cleaned_PySimpleGUI50_source.py", line 694 in __ZgKqhDx
  File "obf_Cleaned_PySimpleGUI50_source.py", line 204 in __k0vNO1JG
  File "obf_Cleaned_PySimpleGUI50_source.py", line 975 in __oR3kmMP4
  File "/Users/nishantbhavsar/PycharmProjects/ToDoList_APP/venv/lib/python3.9/site-packages/PySimpleGUI/PySimpleGUI.py", line 17471 in StartupTK
  File "/Users/nishantbhavsar/PycharmProjects/ToDoList_APP/venv/lib/python3.9/site-packages/PySimpleGUI/PySimpleGUI.py", line 10213 in _Show
  File "/Users/nishantbhavsar/PycharmProjects/ToDoList_APP/venv/lib/python3.9/site-packages/PySimpleGUI/PySimpleGUI.py", line 10480 in _read
  File "/Users/nishantbhavsar/PycharmProjects/ToDoList_APP/venv/lib/python3.9/site-packages/PySimpleGUI/PySimpleGUI.py", line 10402 in read
  File "/Users/nishantbhavsar/PycharmProjects/ToDoList_APP/venv/lib/python3.9/site-packages/PySimpleGUI/PySimpleGUI.py", line 21738 in _error_popup_with_code
  File "/Users/nishantbhavsar/PycharmProjects/ToDoList_APP/venv/lib/python3.9/site-packages/PySimpleGUI/PySimpleGUI.py", line 21697 in _error_popup_with_traceback
  File "/Users/nishantbhavsar/PycharmProjects/ToDoList_APP/venv/lib/python3.9/site-packages/PySimpleGUI/PySimpleGUI.py", line 16556 in PackFormIntoFrame
  File "obf_Cleaned_PySimpleGUI50_source.py", line 985 in __oR3kmMP4
  File "/Users/nishantbhavsar/PycharmProjects/ToDoList_APP/venv/lib/python3.9/site-packages/PySimpleGUI/PySimpleGUI.py", line 17471 in StartupTK
  File "/Users/nishantbhavsar/PycharmProjects/ToDoList_APP/venv/lib/python3.9/site-packages/PySimpleGUI/PySimpleGUI.py", line 10213 in _Show
  File "/Users/nishantbhavsar/PycharmProjects/ToDoList_APP/venv/lib/python3.9/site-packages/PySimpleGUI/PySimpleGUI.py", line 10480 in _read
  File "/Users/nishantbhavsar/PycharmProjects/ToDoList_APP/venv/lib/python3.9/site-packages/PySimpleGUI/PySimpleGUI.py", line 10402 in read
  File "/Users/nishantbhavsar/PycharmProjects/ToDoList_APP/venv/lib/python3.9/site-packages/PySimpleGUI/PySimpleGUI.py", line 21738 in _error_popup_with_code
  File "/Users/nishantbhavsar/PycharmProjects/ToDoList_APP/venv/lib/python3.9/site-packages/PySimpleGUI/PySimpleGUI.py", line 21697 in _error_popup_with_traceback
  File "/Users/nishantbhavsar/PycharmProjects/ToDoList_APP/venv/lib/python3.9/site-packages/PySimpleGUI/PySimpleGUI.py", line 16556 in PackFormIntoFrame
  ...

Process finished with exit code 134 (interrupted by signal 6: SIGABRT)

当前导入代码

import functions
import tkinter
import PySimpleGUI

解决方案

1. 彻底清理后重装指定版本PySimpleGUI

  • 激活项目虚拟环境,执行卸载命令:
    pip uninstall -y PySimpleGUI
    
  • 手动删除虚拟环境中残留的PySimpleGUI目录:
    rm -rf /Users/nishantbhavsar/PycharmProjects/ToDoList_APP/venv/lib/python3.9/site-packages/PySimpleGUI
    
  • 安装对M1兼容性较好的版本:
    pip install PySimpleGUI==4.60.5
    

2. 切换PySimpleGUI后端

替换原导入代码,使用Qt后端替代默认的TK后端:

import functions
import PySimpleGUIQt as sg

3. 升级Python版本

将项目虚拟环境的Python版本从3.9升级到3.10及以上,M1芯片对高版本Python的兼容性更优。重新创建虚拟环境后,再安装PySimpleGUI即可。

内容的提问来源于stack exchange,提问作者Nishant Bhavsar

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.28 13:18:15