我已经使用Gtk在python中编写了GUI应用程序。
不幸的是,我不得不迁移到新的操作系统,并且绝对必须使用其KDE桌面。
现在,python无法从gi.repository导入任何子模块,
尽管已安装python-gi并保持最新状态:
from gi.repository import Gtk, GObject, GLib
在Linux上,这似乎是一个普遍的问题,任何子模块的引用
gi.repository无法解析,但奇怪的是python GUI被
仍然可执行,并且可以在所有Gnome系统(Ubuntu,Lubuntu,Linux Mint)上完美运行。
在KDE上不是这样。
运行代码会产生以下错误:
ERROR:root:Could not find any typelib for Gtk
Traceback (most recent call last):
File"folder/Program.py", line 2, in
from gi.repository import Gtk, GObject, GLib
ImportError: cannot import name Gtk
我有点不知道如何克服这个错误。
我想我必须安装一些Gtk系统软件包/ typelib,但是哪个?
在网络上找不到任何内容。
任何建议都热烈欢迎!
信息:
我正在使用KDE在Debian Wheezy上运行。
您正在哪个发行版上运行它? 每个分配的答案有所不同。 例如,在基于Debian / Ubuntu的系统上,您必须根据要定位的GTK +版本以及该版本的相应libgtk*-dev安装gir1.2-gtk-[23].0。 (至少我认为;我不确定是否都需要为Python安装它们……;这就是为什么这是注释而不是答案)
谢谢。 我在KDE上运行Debian Wheezy。
好的,我通过apt安装了gir1.2-gtk3.0。 到目前为止,此功能已经可以识别Gtk版本。 不幸的是,我得到了gi._glib.GError:XXX_GUI.glade:所需的gtk +版本3.10,当前版本是3.4。 将打开一个新线程以寻求有关该问题的帮助。 回答此线程问题,我接受。
新线程:stackoverflow.com/questions/27077704/gtk-version-error-on-linux
每个分配的答案有所不同。 例如,在基于Debian / Ubuntu的系统上,您必须根据要定位的GTK +版本以及该版本的相应libgtk*-dev安装gir1.2-gtk-[23].0。 (至少我认为;我不确定是否都需要为Python安装它们……)。
我没有开发包就可以工作。 YMMV。