首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >通过Crostini终端tkinter.TclError启动Python空闲时出错

通过Crostini终端tkinter.TclError启动Python空闲时出错
EN

Stack Overflow用户
提问于 2022-04-12 18:07:15
回答 3查看 194关注 0票数 0

最近,我得到了一本联想,并开始使用Linux终端安装Python,并使用空闲Shell运行一些基本命令。直到今天,这是一个很好的工作,现在空闲无法启动。

如果我从应用程序抽屉中启动空闲,它就会弹出,然后立即关闭。

从终端运行时,我得到以下错误:

代码语言:javascript
运行
复制
X Error of failed request: BadDrawable (invalid Pixmap or Window parameter) 
  Major opcode of failed request: 55 (X_CreateGC) 
  Resource id in failed request: 0x40004a 
  Serial number of failed request: 1142 
  Current serial number in output stream: 1152

如果我再次尝试启动,我会得到一个稍微不同的错误:

代码语言:javascript
运行
复制
    Traceback (most recent call last):
File "/usr/bin/idle", line 5, in <module> main()
File "/usr/lib/python3.9/idlelib/pyshell.py", line 1483, in main root = Tk(className="Idle")
File "/usr/lib/python3.9/tkinter/init.py", line 2270, in init self.tk = _tkinter.create(screenName, baseName, className, interactive, wantobjects, useTk, sync, use)
_tkinter.TclError: couldn't connect to display ":0"

我已经试着关闭Linux并重新打开,并再次安装这些软件包。我也试了一下强力洗涤,但是在安装完所有的东西后,我仍然会遇到同样的错误。

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2022-04-19 11:17:25

ChromeOS更新已经解决了问题,详细信息如下:https://bugs.chromium.org/p/chromium/issues/detail?id=1314921

票数 0
EN

Stack Overflow用户

发布于 2022-04-13 08:10:09

第一个错误来自X11客户端库XCreateGC()中的调用,或者更确切地说是来自Xserver处理消息时的调用。这就是这样的错误调用,这是非常罕见的!(我很想知道是什么原因造成的,这真的是不应该发生的。如果一开始很难找出造成问题的原因,那么解决问题就更困难了。)

随后的消息是关于根本无法连接到Xserver的,就好像它已经崩溃了一样。这太奇怪了!如果Xserver已经崩溃,则需要重新启动它,然后才能再次连接到它。这反过来可能需要进行一些工作来重建会话凭据。(最容易做的事情可能就是重新启动。)

Tk (因此,通过扩展,tkinter)不使用在普通Unix上向屏幕呈现的其他方式,主要是因为没有人提供替代机制。像macOS和安卓这样的Unix衍生产品也有这样的替代品,但据我所知,还没有人做过Wayland。我可能错了。

票数 1
EN

Stack Overflow用户

发布于 2022-04-13 22:06:12

我几乎也犯了同样的错误。Python 3.9.2在Linux环境中安装(常规deb包) (Crostini?)运行在华硕Chromebook的最新系统。我能够运行像gimp这样的“常规”X11应用程序(xeyes和xlogo也能工作),但是python也存在一些问题。微不足道的程序,如:

代码语言:javascript
运行
复制
import tkinter
tkinter.Tk()

按预期显示空窗口,但更复杂的tkinter应用程序失败。运行空闲会产生:

代码语言:javascript
运行
复制
wintermute@penguin:~$ idle
Traceback (most recent call last):
  File "/usr/bin/idle", line 5, in <module>
    main()
  File "/usr/lib/python3.9/idlelib/pyshell.py", line 1483, in main
    root = Tk(className="Idle")
  File "/usr/lib/python3.9/tkinter/__init__.py", line 2270, in __init__
    self.tk = _tkinter.create(screenName, baseName, className, interactive, wantobjects, useTk, sync, use)
_tkinter.TclError: couldn't connect to display ":0"
wintermute@penguin:~$ 
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/71847320

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档