为后代保留问题;在编辑中查看解决方法
Pyglet 包安装在基础上,不可移除。使用当前完全更新的 Pyglet 1.1.4 版,我得到与导入项目相关的可重复错误pyglet.gl.gl_info
;例如,在尝试创建pyglet.window.Window()
时,在尝试时import pyglet.gl
,或在尝试通过导入 pygarrayimage 时from pygarrayimage.arrayimage import ArrayInterfaceImage
。
在所有这些情况下,相关的回溯都以无信息的消息结束:
/Users/[username]/Library/Enthought/Canopy_64bit/System/lib/python2.7/site-packages/pyglet/image/__init__.py in <module>()
142
143 from pyglet import gl
--> 144 from pyglet.gl import *
145 from pyglet.gl import gl_info
146 from pyglet import graphics
/Users/[username]/Library/Enthought/Canopy_64bit/System/lib/python2.7/site-packages/pyglet/gl/__init__.py in <module>()
102 from pyglet.gl.glext_arb import *
103 from pyglet.gl.glext_missing import *
--> 104 from pyglet.gl import gl_info
105
106 import sys as _sys
ImportError: cannot import name gl_info
我在带有 Canopy 64 位的 Intel 处理器上使用 OSX 10.6.8,这些都是 100% 可重复的。
鉴于回溯可能会gl_info
错误地认为不包括在内,但事实并非如此。dir(pyglet.gl.gl_info)
可以成功运行。
编辑:解决了这个问题。
Pyglet 1.1.4 在 OSX 上不支持 64 位,因此在 Enthought 在 Canopy 中打包更新版本的 Pyglet 之前,这里有一个针对 64 位 OSX 用户的解决方法。
- 获取任何 Pyglet 1.2alpha1 或更高版本的源代码。
- 将源代码提取到您选择的目录。
- 将此目录附加到 PYTHONPATH 环境变量的开头,在(
~/.bash_profile
对于终端 shell)和/etc/launchd.conf
(对于 GUI 进程)中,使用类似于以下内容的行:export PYTHONPATH=/Users/[username]/src/pyglet-1.2alpha1:$PYTHONPATH
- 在不相关的目录中运行此 bash 命令并确认打印的路径导致您的 1.2alpha1 源目录:
$ python -c "import pyglet; print pyglet.__path__[0]"