0

为后代保留问题;在编辑中查看解决方法

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 用户的解决方法。

  1. 获取任何 Pyglet 1.2alpha1 或更高版本的源代码。
  2. 将源代码提取到您选择的目录。
  3. 将此目录附加到 PYTHONPATH 环境变量的开头,在 ~/.bash_profile对于终端 shell)和/etc/launchd.conf(对于 GUI 进程)中,使用类似于以下内容的行:export PYTHONPATH=/Users/[username]/src/pyglet-1.2alpha1:$PYTHONPATH
  4. 在不相关的目录中运行此 bash 命令并确认打印的路径导致您的 1.2alpha1 源目录:$ python -c "import pyglet; print pyglet.__path__[0]"
4

1 回答 1

0

如果您不想修改 bash_profile,您可以简单地执行以下操作:

  1. 将最新的 Pyglet 源代码提取到您选择的目录并 cd 到该目录(它应该包含一个 setup.py 文件)。
  2. 通过执行以下操作(在 Mac 64 位上),使用 Canopy 的 Python 安装 Pyglet: ~/Library/Enthought/Canopy_64bit/User/bin/python setup.py install

Canopy 的不同平台的 Python 的位置在这里列出:https:
//support.enthought.com/entries/23646538-Make-Canopy-s-Python-be-your-default-Python-ie-on-the-PATH-

于 2013-04-30T23:59:52.013 回答