还有很长的路要走,它需要在这里和那里进行一些调整,但它确实有效。我用的是Python 3.6,不知道2.7能不能用。
首先,从此处 (https://github.com/guruDanny67/gvsbuild) 获取适用于 Windows 的 GTK+3 的构建脚本。它是来自这个 repo (https://github.com/wingtk/gvsbuild) 的一个分支,但它似乎与各种版本的包相比更加最新。我使用了 'ed2018' 分支,这似乎是最相关的,但是来自这个分支的更改可能会以 'master' 结尾,因此请检查前后提交的数量。
如果您没有在 Visual Studio 2017 中安装 C++ 工作负载,您还需要 Visual Studio 2017 构建工具。您也可以使用 VS 2015,但我没有尝试过。 2017 构建工具在这里:https://visualstudio.microsoft.com/downloads/#other。您可能还应该包括“VC++ 2015.3 v14.00 桌面工具集”。
您需要安装 Python。我用的是3.6版本,其他不知道。
此外,您还需要 MSYS2 (http://www.msys2.org/)。它只用于一些需要的工具。
编译/安装(大部分)非常简单,但需要一些时间(SSD 可能有很大帮助)。只需阅读 gvsbuild 页面上的说明即可。如果您逐个构建,则在命令行中包含--fast-build 参数会有所帮助。
您可以获得所有项目的列表,而不是使用
python build.py list
或者干脆
build list
如果您安装了 Python 启动器。
构建的所有选项:
build build --help
有一个 pygobject 和 pycairo 的构建项目,它将它们安装在已安装的 Python site-packages 目录中。但是,更好的方法是卸载它们(使用 pip 或者如果 pip 抱怨则只删除目录)。
然后,从 PyPi 站点(https://pypi.org/project/pycairo/、https://pypi.org/project/PyGObject/)下载 PyCairo 和 PyGObject 的源代码。将包含lib 文件的目录添加到您的LIB 环境变量(应该类似于f:\gtk-build\gtk\Win32\release\lib)。将包含目录添加到您的 INCLUDE 环境变量 (c:\gtk-build\gtk\Win32\release\include),然后首先运行 Cairo 的 setup build 脚本。如果构建完成正常,运行setup bdist_wininst。它将在dist 子目录中生成一个安装exe 文件。运行这个 exe(以管理员身份),你应该已经安装了 PyCairo。
PyGobject 的构建是相同的。
如果setup build 抱怨它找不到某些.lib 或.include 文件,只需在gtk-build\gtk\Win32\release\' folder. Include that folder inLIBorINCLUDE` 变量中的某个位置找到它们所在的文件夹并再次运行。
HTH,汤姆