pyglet NoSuchConfigException 错误

2 投票
1 回答
3405 浏览
提问于 2025-04-18 15:45

我正在尝试使用 pyglet,想从他们网站上的一个 Hello World 示例开始入手。即使是最简单的代码行也会出现错误:

import pyglet

window = pyglet.window.Window()

结果是

Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/usr/local/lib/python2.7/site-packages/pyglet/__init__.py", line 306, in __getattr__
    __import__(import_name)
  File "/usr/local/lib/python2.7/site-packages/pyglet/window/__init__.py", line 1684, in <module>
    gl._create_shadow_window()
  File "/usr/local/lib/python2.7/site-packages/pyglet/gl/__init__.py", line 494, in  _create_shadow_window
    _shadow_window = Window(width=1, height=1, visible=False)
  File "/usr/local/lib/python2.7/site-packages/pyglet/window/xlib/__init__.py", line 474, in __init__
    super(XlibWindow, self).__init__(*args, **kwargs)
  File "/usr/local/lib/python2.7/site-packages/pyglet/window/__init__.py", line 641, in __init__
    raise NoSuchConfigException('No standard config is available.')
pyglet.window.NoSuchConfigException: No standard config is available.

我在 Ubuntu 12.04 上使用 Python 2.7.8Pyglet 1.1.4。我的显卡是 nVidia geforce gt 540m,驱动版本是 304.116

编辑:我在同一台机器上尝试在 Windows 7 上做同样的事情,结果出现了不同的错误:

Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "C:\Python27\lib\site-packages\pyglet\__init__.py", line 306, in __getatt
r__
    __import__(import_name)
  File "C:\Python27\lib\site-packages\pyglet\window\__init__.py", line 1684, in
<module>
    gl._create_shadow_window()
  File "C:\Python27\lib\site-packages\pyglet\gl\__init__.py", line 494, in _crea
te_shadow_window
        _shadow_window = Window(width=1, height=1, visible=False)
      File "C:\Python27\lib\site-packages\pyglet\window\win32\__init__.py", line 423
, in __init__
    super(Win32Window, self).__init__(*args, **kwargs)
  File "C:\Python27\lib\site-packages\pyglet\window\__init__.py", line 686, in _
_init__
    self._create()
  File "C:\Python27\lib\site-packages\pyglet\window\win32\__init__.py", line 467
, in _create
    _user32.RegisterClassW(byref(self._window_class))
WindowsError: exception: access violation reading 0xFFFFFFFFFFFFFFFF

这时 PythonPyglet 的版本是一样的,而 nVidia 驱动是 337.88

1 个回答

-1

我也遇到过这个问题,后来在谷歌上搜索了一下,发现Ubuntu团队在他们的更新中已经修复了这个问题。所以我通过运行以下两个命令来解决了这个问题:

sudo pip uninstall pyglet
sudo apt-get install python-pyglet

撰写回答