windows下rust的gtk-rs开发环境部署

最近闲得无聊,玩一玩GUI,发现gtk官方通过gtk-rs支持rust绑定。Linux及Mac都可以按照官方文档快速顺利部署(基本就是安装几个包),Windows下环境部署有一些问题(主要是编译gtk的一些问题),所以写个笔记留存。在此也推荐FLTK的rust绑定fltk-rs,开发环境部署相对快速简单,同样支持跨平台,只不过感觉这种写法有点麻烦。单Windows不考虑跨平台也可以试试native-windows-gui。不追求文件大小的也可以尝试其它的一些使用wasm的库。

官方推荐的方法

MSVC toolchain

msvc环境不推荐使用该方法。需要处理编译期的各种报错。删掉重来安装好多次,试了好几次才勉强成功

GNU toolchain

可以使用官方文档的方式,只是需要注意rustup需要设置为stable-gnu

使用vcpkg安装(MSVC环境)

准备工作

  • 系统环境:Windows 7 或更新的版本。我用的win10 21H2
  • 网络:可以顺利访问github或其它上网手段。
  • 下载package-confg工具pkg-config-lite(zip压缩包,我们只需要bin目录下的单文件),并将该可执行文件的目录设置环境变量
  • rust切换为msvc。
  • git:这个基本编程必须,不多作介绍
  • Visual Studio:我用的2019,Vcpkg需要Visual Studio 2015 Update 3 或更新的版本。强烈建议19或新版本;需要安装Desktop development with C++(使用C++的桌面开发)。
  • vcpkg:主角。可根据vcpkg的github中文介绍页windows安装进行安装。
  • 微软的常用运行库:建议提前在网上找个常用运行库,先安装完成。可防止很多意外发生。
  • 足够的耐心:编译gtk整个过程需要编译很多的包,时间很漫长,过程中可能会在多个configure过程中等待很长时间,不要着急,我因为网络及机器的原因,总共编译了6个多小时。

安装

  1. 在安装之前,一定要确保做好了准备工作,然后重启一下自己的电脑(记住,一定要重启一下)。开始安装:
  2. 使用命令行进入vcpkg的目录(vcpkg.exe所在的目录,vcpkg.exe需要安装vcpkg的时候按照文档使用.\vcpkg\bootstrap-vcpkg.bat生成)。
  3. 执行 vcpkg install gtk --triplet x64-windows
  4. 漫长的等待,相信你的机器没有卡,它只是时间很漫长,你可以去睡一觉。等明天再看。
  5. 继续等待。
  6. 等待。
  7. 等待。
  8. 查看你的dos命令行是不是回到了>提示符,往上翻一翻,看看有没有报错,看看最后一个编译的是不是gtk(单单这个最后一个gtk我就花费了2个多小时)。

如果正常,恭喜你!可以下一步了。

设置环境变量

设置两个环境变量,建议放入系统环境变量(用户环境变量我加入了以后哪怕重启也不生效)。

PKG_CONFIG_PATH (vcpkg的目录)\installed\x64-windows\lib\pkgconfig
GTK_LIB_DIR (vcpkg的目录)\installed\x64-windows\lib

然后把 (vcpkg的目录)\installed\x64-windows\bin 加入到PATH。

提示:设置环境变量之前使用windows资源管理器确保这三个目录可以正常访问,也方便复制路径。

结尾

可以跟着 Project SetupHello World!创建项目。试着编译一下看看吧。

posted @ 2022-08-07 09:47  GoudaX  阅读(2262)  评论(0编辑  收藏  举报