1

我正试图让一个旧软件恢复工作。它是一个独立的数据库客户端,它的图形界面python-glade用 python 模块描述和使用/使用gtk

我上次用它的时候是两三年前的事了,那个时候开箱就可以安装。我不知道它适用于不同库的哪些版本。

我最初想在虚拟环境中隔离它的依赖项,但其中两个是pygtkand gobject,这似乎很难pip在 linux 上安装,我担心我最终会得到一个相当脏的类似名称的全局安装库。

该软件的原作者说他最近没有太密切关注 gtk 的发展,他暗示用import gtkwith代替from gi.repository import Gtk; gtk = Gtk,但如果我这样做,我会在库模块中遇到分段错误:

/usr/lib/python2.7/dist-packages/gtk-2.0/gtk/__init__.py:40: 
  Warning: g_type_get_qdata: assertion 'node != NULL' failed
  from gtk import _gtk
Segmentation fault (core dumped)

无论如何,我不知道从哪里得到gdk,这也是使用的。

一个严重的问题是我不清楚模块之间的区别是什么:pygtk, gtk, gi.repository.Gtk.

4

1 回答 1

0

正如jku所说,GTK2还活着,还在踢。如果您安装了正确的依赖项,您将能够使原始应用程序正常工作。快速查看依赖项列表给我的印象是您应该安装以下软件包(在基于 Debian 的系统上):

  • python2.7(或任何 Python2.x)
  • python-sqlalchemy
  • python-gtk2
  • python-gobject-2
  • 蟒蛇lxml
  • python-pysqlite2
  • 蟒蛇格莱德2

如果你遇到任何

ImportError: No module named xxxx

您通常通过安装相应的 python-xxxx 包来解决这个问题。

于 2014-01-26T15:07:41.247 回答