Windows下搭建GTK开发环境

本文介绍如何在Windows环境下安装配置MinGW和GTK+,包括MinGW的安装与环境变量设置、GTK+的安装与配置,以及如何通过VC进行GTK+的编译。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1、首先安装MinGW(GNU Compiler Collection (GCC) for Windows),到http://sourceforge.net/projects/mingw/下载MinGW,运行exe,一路点击“Next”到 “Select Components”页面,选择“C++ Compiler”,“MSYS Basic System”,如果不清楚的话全部选择安装,选择安装目录(默认C:/MinGW),程序开始自动下载各种包,安装完成。

2、 设置MinGW环境变量。右击“我的电脑”->“属性”->“高级”->“环境变量”->“系统变量”,修改Path变量值,在其后增加MinGW目录(C:/MinGW/bin)。设完后在命令行(cmd)下输入gcc,如果显示gcc: no input files而不是显示未找到该命令的话就说明MinGW编译环境已经搭建成功了。

写一个"hello World"测试程序(hello.cpp,文件位置d:/hello.cpp):
#include <stdio.h>

int main(int argc, char* argv[])
{
    printf("Hello World!");
    return 0;
}

在命令行(cmd)下输入gcc d:/hello.c -o d:/hello进行编译。

3、到http://sourceforge.net/projects/mingw/files/MSYS/BaseSystem/msys-core/msys-1.0.11/MSYS-1.0.11.exe下载MSYS-1.0.11.exe,这个是虚拟Linux下的命令行的。下载下来后点击进行安装,一路Next下去,安装到c:/MinGW/MSYS目录下面。安装完成后会弹出来一个命令行窗口,询问你
Do you wish to continue with the post install? [yn ],输入y,回车。
Do you have MinGW installed? [yn ],输入y,回车。
Please answer the following in the form of c:/foo/bar。
Where is your MinGW installation?,输入MinGW安装路径(c:/MinGW)。
4、到http://www.gtk.org/download-windows.html下载All-in-one bundles(gtk+-bundle_2.18.7-20100213_win32.zip),下载下来后解压缩到c:/MinGW/GTK+目录下。
5、设置GTK+环境变量。右击“我的电脑”->“属性”->“高级”->“环境变量”->“系统变量”,修改Path变量值,在其后增加GTK+目录(c:/MinGW/GTK+/bin)。设完后在命令行(cmd)下输入pkg-config --cflags gtk+-2.0,如果能找到该命令的话就说明GTK+的编译环境也搭建成功了。

验证安装是否正确(无需编写Helloworld)在cmd命令行下执行:
gtk-demo
如果有界面显示出来表示安装正确。

也可以写一个GTK+的简单的测试程序(base.c):
#include <gtk/gtk.h>

int main(int argc, char *argv[])
{
 GtkWidget *window;
 gtk_init (&argc, &argv);
 window = gtk_window_new (GTK_WINDOW_TOPLEVEL);
 gtk_widget_show (window);
 gtk_main ();
 return 0;
}

打开MSYS(cmd无法编译),输入gcc c:/base.c -o c:/base `pkg-config --cflags --libs gtk+-2.0`,编译成功,再输入c:/base,就会弹出一个GTK+的窗口出来。

如果想使用微软的Windows主题引擎,在安装目录下的etc/gtk-2.0目录下,新建一文件,命名为gtkrc,内容只有一句:
gtk-theme-name = "MS-Windows"
保存并退出。

6、VC编译Gtk设置

     a、加入include files,在vc++6 menu->tools->options->directories里包含gtk的头文件,C:/MINGW/GTK+/INCLUDE,C:/MINGW/GTK+/INCLUDE/ATK-1.0,C:/MINGW/GTK+/INCLUDE/CAIRO,C:/MINGW/GTK+/INCLUDE/FONTCONFIG,C:/MINGW/GTK+/INCLUDE/FREETYPE2/FREETYPE/CONFIG,C:/MINGW/GTK+/INCLUDE/GAIL-1.0,C:/MINGW/GTK+/INCLUDE/GLIB-2.0,C:/MINGW/GTK+/INCLUDE/GTK-2.0,C:/MINGW/GTK+/INCLUDE/LIBPNG14,C:/MINGW/GTK+/INCLUDE/PANGO-1.0,C:/MINGW/GTK+/LIB/GLIB-2.0/INCLUDE,C:/MINGW/GTK+/LIB/GTK-2.0/INCLUDE;

    b、加入library files,vc++6 menu->tools->options->directories里包含gtk的库文件,C:/MINGW/GTK+/LIB;

    c、建立一个win32 console application,选择为空,创建一个.cpp文件,将第5步的代码粘贴进来,在project setting的link里面,去掉那些.lib文件,加入如下:
glib-2.0.lib gtk-win32-2.0.lib gdk-win32-2.0.lib gobject-2.0.lib gdk_pixbuf-2.0.lib gthread-2.0.lib gmodule-2.0.lib pango-1.0.lib intl.lib,再编译运行即可。

   备注:步骤a和b操作会影响整个vc环境,一次设置之后所有的gtk代码都可以编译,但是当gtk工程移植到别的vc编译器下需要重新设置,可以在每个工程的project setting->c/c++->Preprocessor/Additional include directories中加入步骤a的头文件路径,zaiproject setting->link->Input/Additional library path中加入步骤b中的库文件路径。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值