【发布时间】:2013-09-19 19:37:27
【问题描述】:
为后人保留问题;在编辑中查看解决方法
Pyglet 包安装在基础上,不可移除。使用当前完全更新的 Pyglet 1.1.4 版,我得到与导入项目 pyglet.gl.gl_info 相关的可重复错误;例如,尝试创建pyglet.window.Window(),尝试import pyglet.gl,或尝试通过from pygarrayimage.arrayimage import ArrayInterfaceImage 导入pygarrayimage。
在所有这些情况下,相关的回溯都以无信息的消息结束:
/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
我在 Intel 处理器上使用 OSX 10.6.8,Canopy 64 位,这些都是 100% 可重复的。
考虑到回溯,人们可能会错误地认为 gl_info 不包括在内,但事实并非如此。 dir(pyglet.gl.gl_info)可以成功运行。
编辑:解决了这个问题。
Pyglet 1.1.4 在 OSX 上不支持 64 位,因此在 Enthought 在 Canopy 中打包更新版本的 Pyglet 之前,这里有一个针对 64 位 OSX 用户的解决方法。
- 获取任何 Pyglet 1.2alpha1 或更高版本的源代码。
- 将源代码提取到您选择的目录中。
- 将此目录附加到 PYTHONPATH 环境变量的开始,在 both
~/.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]"
【问题讨论】: