我正在开发一个必须在 windows 和 linux 上 100% 兼容的应用程序。在linux上我没有问题,但在windows上我想出了这个消息:from gi.repository import Gtk ImportError: No module named gi
我安装了 pygobject、pygtkallinone、gtk .. 我错过了什么?
Havok 的大部分答案都是正确的,除了文档最近有了很大的改进,有一个教程:
包括用于离线阅读的 PDF 版本:
以及完整的 API 参考手册,不仅包括 Gtk,还包括许多其他可用于自省的库:
在 windows 上支持很好,在创建所有 windows 可执行文件和库方面付出了很多努力,pygi-aio 的最新版本是 3.10.6:
我还在 Gnome wiki 上发布了关于如何使用 pygobject 自省在 win32 上构建的说明,这并不难,我还上传了一个实际有效的 setup.py:
所以答案是,不要使用 PyGTK
gi.repository
模块被称为PyGObject并且适用于 Gtk+3 并且还不能用于 Windows(有实验,但还没有准备好 AFAIK)。https://live.gnome.org/PyGObject
gtk
模块称为PyGtk,用于 Gtk+2,在 Windows 平台(特别是 2.24)上非常成熟。http://www.pygtk.org/
有什么不同?
如果您选择使用 PyGtk,则可以很好地支持冻结应用程序。您可以在此处查看我的应用程序的文档和支持文件:http: //sourceforge.net/p/nestededitor/code/247/tree/trunk/dist/windows/
希望能帮助到你。
编辑:
两年来,很多事情都发生了变化。请参阅 giamt 答案。