【问题标题】:Puppy Linux - import gtk throws error in PythonPuppy Linux - 导入 gtk 在 Python 中引发错误
【发布时间】:2010-12-04 04:20:54
【问题描述】:

我使用的是 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,确实我没有问题告诉pythonimport 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 中,我无法导入。

【问题讨论】:

    标签: python linux gtk pygtk


    【解决方案1】:

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

    【讨论】:

    • 这里的解决方案是尝试安装更新的 glib 和/或 gtk+ 吗?
    • 作为选项;但是,为您的发行版本找到 pygtk 包会更安全,因为不成功的 gtk+ 升级可能会破坏其他依赖它的程序。
    • 好的,我试一试,看看效果如何。
    猜你喜欢
    • 1970-01-01
    • 2013-01-30
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-03-11
    • 2015-05-18
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多