如何在Windows上安装GTK + 3.0?

NOP*_*ALL 30 c windows gtk codeblocks gtk3

试图在Codeblocks Win7上设置GTK + 3.0.找不到如何做到这一点有些麻烦.

GTK网站将您引导至msys2.似乎曾经在GTK网站上直接下载了一个不再存在的一体化Windows软件包.

按照说明,安装和更新msys2,我看到没有引用GTK +,在已安装的文件或GTK指示您的mysys网站上.

就不必要和愚蠢地做一些应该简单的事情而言,它看起来非常具有线索性.也许我错过了一些东西,但它不应该像下载压缩文件夹,提取和设置路径一样简单吗?

按照这个速度,id可以更快地学习C++并使用Qt.

问题出现在标题中,我很惊讶我不得不问这个问题,似乎谷歌应该已经完全覆盖,但我发现的一切都与GTK网站上不再提供的下载有关.我找不到有关msys2和GTK + 3.0的信息.

提前致谢.

and*_*abs 35

欢迎来自Google用户的未来!自从我写这个答案以来,GTK +网站现在有正式的安装说明,涵盖了我在下面所说的内容,但更多的细节和更少的痛苦.请改为参考该页面.以下答案因历史原因而保留.

GTK +网站的问题在于没有人可以维护这些二进制发行版.以前用于Windows的二进制发行版是GTK + 3.6,我相信它早在2012年就已发布了.目前的版本是3.16,3.18 距离发布还有几天的时间.MSYS2是唯一受支持的安装机制,它经常更新.

话虽这么说,如果你使用MSYS路线,你需要单独安装GTK +; MSYS没有开箱即用的GTK +.从...开始

pacman -Ss gtk3
Run Code Online (Sandbox Code Playgroud)

这应该给你一个可安装的软件包列表,包括32位和64位MinGW的GTK +库.我现在忘记了他们的确切名字.

找到想要的那个后,请使用

pacman -S package-name-here
Run Code Online (Sandbox Code Playgroud)

安装它.然后,从"开始"菜单的MSYS文件夹中打开MinGW 32位或64位Shell以开始开发.

如果您想要一个传统的IDE进行GTK +编程,请查看GNOME Builder或Anjuta.对于图形GUI设计师,请查看Glade.

  • 非常好,我知道对于懂linux的人来说这会很简单.我实际上设法找到windows 3.6.4下载http://win32builder.gnome.org/gtk+-bundle_3.6.4-20130921_win32.zip,它似乎工作到目前为止没有通过你已经显示的msys2方式.Windows用户应该知道如何做到这一点,Windows GTK页面当然应该用更清晰的指令更新?如果我有任何问题,我会尝试重新安装你给出的方法,但希望我没有.感谢您的建议,我正计划检查Glade. (5认同)
  • 不要使用捆绑包,它们都已过时。使用 MSYS2,因为这就是 GTK+ 开发人员所说的,这是 Windows 支持的。自从写了那个答案后,我重写了安装说明。您现在应该可以按照官方说明使用 MSYS2 轻松安装 GTK+:https://www.gtk.org/download/windows.php (2认同)
  • 因此,如何使用GTK +工具包而又不用安装另一个磁盘下载器和IDE,而磁盘上占用了450MB内存呢?另外,我的磁盘上已经有minGW,我真的需要另一个副本吗?我想使用Code :: Blocks或Eclipse或Net Bean,所有这些我已经在计算机上拥有了。我了解下载程序背后的理念,它提供最新,最出色的功能,但实际上这是一个坏主意。我的计算机被下载程序,编译器和IDE所污染,这让我很头疼。我只想生产可以赚钱的东西,而不是花一天时间学习新东西 (2认同)

NOP*_*ALL 10

哈利路亚,我找到了理智的非Linux版本获取Windows的GTK.

有人非常友好地上传到Dropbox GTK文件,只需下载并解压缩即可.这是其他任何碰到这个GTK/msys2灾难的人的链接.

https://www.dropbox.com/sh/8d1qbh5dsp044on/UgkALzhlqH

这些文件确实应该在GTK Windows下载页面上提供,它是乞丐的信念.

关闭这个线程,万岁窗口.

  • 嗯,不知道为什么它也被downvoted,但我真的希望它来自一个比dropbox链接更有权威的来源...... (10认同)
  • 实际上,这正是GTK人们不想提供的,因此使用GTK开发并希望分发他们的应用程序的人知道他们需要什么. (3认同)
  • 它之所以被否决,是因为从网络上不受信任的随机位置获取内容是愚蠢的。这就是GTK +团队指向MSYS2项目的原因。如果GTK +信任​​MSYS2,而您信任GTK +,那么您应该信任MSYS2。 (3认同)
  • 请原谅我的无知,但为什么这篇文章遭到了贬低?现在存在用于Windows的GTK二进制文件不是一件好事吗? (2认同)

Ede*_*nia 5

我同意GNOME社区对此有点无礼。他们使GTK +的安装几乎与Linux的安装相同,这有点像在mcdonalds中为您提供百事可乐。

最糟糕的是,这迫使您使用自己的废话,甚至他们告诉您选择哪种IDE,如何构建应用程序,应用程序中将包含什么。 Linux,我只是不偏不倚)


现在具体来说,您明确提到了代码块。不要使用code :: block的GTK + Project,它已经过时了。您当然可以修改脚本或创建自己的脚本,但是它仍然会减慢您的速度,并且我们程序员很珍惜我们的时间(我认为)

(到目前为止)GTK3 ver。的安装过程。Windows 7上与Code :: Blocks一起使用的3.22.16非常简单。首先下载MSYS2并在msys2 shell中键入:

pacman -S mingw-w64-x86_64-gtk3

(输入y以确认)然后

pacman -S mingw-w64-x86_64-toolchain base-devel (以确保您具有pkg-config的预编译二进制文件,并确保您具有最新版本的gcc)

然后,您可以在CodeBlocks中进行一些工作,首先从Codeblocks的编译器设置-> Toolchain可执行文件中设置新的编译器。新的编译器应位于C:\msys64\mingw64 (C或安装MSYS的磁盘中)

然后在Codeblocks的编译器设置->搜索目录中链接一些库: 在此处输入图片说明 这些库足以运行以下简单的示例代码:

#include <gtk/gtk.h>

static void activate (GtkApplication* app, gpointer user_data)
{
    GtkWidget *window;

    window = gtk_application_window_new(app);
    gtk_window_set_title(GTK_WINDOW (window), "Window");
    gtk_window_set_default_size(GTK_WINDOW(window), 200, 200);
    gtk_widget_show_all(window);
}

int main (int argc, char *argv[])
{
    GtkApplication *app;
    int status;

    app     = gtk_application_new("org.gtk.example", G_APPLICATION_FLAGS_NONE);
    g_signal_connect(app, "activate", G_CALLBACK (activate), NULL);
    status  = g_application_run(G_APPLICATION (app), argc, argv);
    g_object_unref(app);

    return status;
}
Run Code Online (Sandbox Code Playgroud)

并得到这样的结果:在此处输入图片说明