我认为GNOME社区在某种程度上有些傲慢。
他们使得GTK+的安装与Linux安装几乎相同,这有点像在麦当劳给你百事可乐。
更糟糕的是,他们强迫你使用他们自己的东西,甚至告诉你选择哪个IDE,如何构建你的应用程序以及应用程序中会有什么..(没有个人恩怨,我实际上总是更喜欢Linux,我只是不偏不倚)
现在具体来说,你明确提到了Codeblocks。
不要使用code::block的GTK+项目,它非常过时。
当然,你可以修改脚本或者创建你自己的脚本,但这仍然会让你变慢,
而我们编程人员珍视时间(我想)
在windows 7上安装GTK3 ver. 3.22.16并与Code::Blocks一起使用的过程非常简单。
首先下载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的编译器设置 -> 工具链可执行文件中设置新的编译器。这个新编译器应该位于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;
}
并且需要得到这样的结果:![在此输入图片描述](https://istack.dev59.com/vOExc.webp)