Puppy Linux - 导入gtk在Python中引发错误

时间:2010-12-03 19:12:47

标签: python linux gtk pygtk

我使用的是Linux 2.6.24.16版。我相信它使用的是Puppy Linux 4.2。我实际上正在使用Puppy Arcade,这是一个专门的分支。他们的帮助文件提示它是4.2,但是。

我正在使用Python 2.6.4,我通过这里发布的小狗包安装了它:http://code.google.com/p/puppy-development/downloads/detail?name=Python%2B-2.6.4-i486.pet&can=2&q=

该软件包声称拥有pygtk,而且我没有问题告诉python import pygtk

但是,只要我尝试import gtk,就会抛出以下错误:

>>> import gtk
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/usr/lib/python2.6/site-packages/gtk-2.0/gtk/__init__.py", line 38, in <module>
    import gobject as _gobject
  File "/usr/lib/python2.6/site-packages/gtk-2.0/gobject/__init__.py", line 26, in <module>
    from glib import spawn_async, idle_add, timeout_add, timeout_add_seconds, \
  File "/usr/lib/python2.6/site-packages/gtk-2.0/glib/__init__.py", line 22, in <module>
    from glib._glib import *
ImportError: /usr/lib/python2.6/site-packages/gtk-2.0/glib/_glib.so: undefined symbol: g_assertion_message

我希望我能告诉你我正在使用的pygtk版本,但似乎信息存储在我无法导入的gtk内。

1 个答案:

答案 0 :(得分:1)

看起来你试图使用的pygtk包是针对较新的glib(以及可能的gtk +)库编译的。只是从观察(我不是小狗用户)看起来你已经下载了4.3的pygtk包(可能有更新的运行时库)。