Dev-Cpp/Mingw32 环境介绍(11)

来源:互联网 发布:hp1020打印机选择端口 编辑:程序博客网 时间:2024/05/14 04:56
导读:
  Dev-Cpp/Mingw32 环境介绍(11)
  上文回顾:
  在上一篇文章中我向各位介绍了有关SDL的安装和设置。希望各位能够从中受益,按照上次的所说的。这次我们将要安装GTK运行与开发库。当然,这一切都是在Win32下进行的。希望你们能够爱上这个。
  第十六章 GTK的下载和安装
  GTK?很多人会好奇,既然有了MFC为什么还要GTK?其实,MFC并不是跨平台的GUI。而GTK可以在多平台上运行。如Linux,Mac。当然,也包括Win32。如果你想让你的程序在一处编写,多处编译的话。GTK是一个非常不错的GUI。
  GTK在前面已经介绍过如何通过安装程序来安装。但是,对于那些比较新的库,可能你们就无法安装了。而且,也不够自由。下面,我就介绍一下如何从GTK官方下载安装GTK的Win32版本。对于GTK的介绍,我想我不用介绍了吧。
  GTK的官方网站 http://www.gtk.org找到Win32的下载地址。在上到这个网站的下载页面后,你会发现很多下载链接。这些都是GTK的一部分,你可以按照你的需要来下载相映的数据文件。不过,你必须下载如下几个文件,这是必须的。
  GLib
  libiconv
  gettext-runtime
  GTK+
  atk
  Pango
  如果你只是运行的话,就只要下载runtime就可以了,如果你要开发的话,那 还 要下载带有dev的数据文件(注意其中还有一个是源文件)。在这篇文章写的时候,最新稳定的gtk是2.6版本的。
  在下载完成以后,我们就只要压缩到一个目录中就可以了,不过,注意,对于Dev和Runtime要分别压缩到两个目录中,免得混淆。
  在将Dev中的
  /include/gtk-2.0
  /lib/gtk-2.0/include
  /include/atk-1.0
  /include/pango-1.0
  /include/glib-2.0
  /lib/glib-2.0/include
  添加为头文件路径
  /lib
  添加为库文件路径
  在链接时添加如下参数
  -lgtk-win32-2.0 -lgdk-win32-2.0 -latk-1.0 -lgdk_pixbuf-2.0 -lpangowin32-1.0 -lgdi32 -lpango-1.0 -lgobject-2.0 -lgmodule-2.0 -lglib-2.0 -lintl -liconv
  在编译时添加如下参数
  -mms-bitfields
  这样,我们的GTK 开发库就算安装完成了。
  不过,运行的的话就有问题了,还要对系统设置一下。
  将bin文件夹和lib文件夹的路径添加入系统Path变量中就可以了。或者,你将lib文件夹内的文件复制到bin文件夹中,只将bin的路径添加为系统变量也可以。(后者是官方网站建议的)。
  至此我们的GTK开发环境和运行环境都设置好了。下面给出一组简单的Makefile和例子代码。
  #MakeFile.txt
  CC=gcc
  GTK_PATH=
  CFLAGS=-mms-bitfields -I"$(GTK_PATH)/include/gtk-2.0" -I"$(GTK_PATH)/lib/gtk-2.0/include" -I"$(GTK_PATH)/include/atk-1.0" -I"$(GTK_PATH)/include/pango-1.0" -I"$(GTK_PATH)/include/glib-2.0" -I"$(GTK_PATH)/lib/glib-2.0/include"
  LFLAGS=-L"$(GTK_PATH)/lib" lgtk-win32-2.0 -lgdk-win32-2.0 -latk-1.0 -lgdk_pixbuf-2.0 -lpangowin32-1.0 -lgdi32 -lpango-1.0 -lgobject-2.0 -lgmodule-2.0 -lglib-2.0 -lintl -liconv
  all:
  $(CC) $(CFLAGS) -c gtk.c -o gtk.o
  $(CC) $(LFLAGS) -o gtk.exe gtk.o
  #MakeFile.txt End
  //gtk.c
  #include
  static void destroy( GtkWidget *widget, gpointer data )
  {
  gtk_main_quit ();
  }
  int main( int argc, char *argv[] )
  {
  GtkWidget *window;
  gtk_init (&argc, &argv);
  window = gtk_window_new (GTK_WINDOW_TOPLEVEL);
  gtk_window_set_title(GTK_WINDOW(window),"GTK+ Programe");
  g_signal_connect (G_OBJECT (window), "destroy",
  G_CALLBACK (destroy), NULL);
  gtk_widget_show (window);
  gtk_main ();
  return 0;
  }
  //gtk.c end
  至此,有关GTK的设置和安装就到这里介绍完成了。由于前面对于设置的内容有过详细的介绍。所以,这里就不做太深入的操作说明了。如果有不明白的,可以在这里提出也可以寻找以前的内容。由于本系列文章有很多地方转载,所以如果您是在转载的网站上查看。那么http://blog.csdn.net/visioncat/上能找到,完整的,最新修正后的文章。同时,你也可以在上面相应的文章下,提出您的问题和建议以得到最直接的帮助。
  文外音:
  在这篇文章以后,MinGW/Dev-C++ 将进入中级篇介绍了。原本那些只对Dev-Cpp的设置和操作的介绍将基本停止(只在必要时说明)。转而对MinGW和其他GCC的Win32编译器做更仔细的介绍以供您深入使用。我想您也不想总是停留在某个IDE下使用Dev-Cpp吧。其实,Dev-Cpp中的核心编译器就是MinGW。所以,您在中级篇中读到的内容同样能够应用到Dev-Cpp中。有些你可以对Dev-Cpp做一些修改便可以成功使用中级篇的内容。不过,我还是会以MakeFile的介绍为主。就好像我第十五,十六章所展示的一样。不过,内容会更为丰富。敬请期待。
  STUDIO软件开发组(SDT)
  STUDIO Development Team
  北斗星君(黄庠魁)

本文转自
http://blog.csdn.net/visioncat/archive/2005/06/22/400186.aspx
原创粉丝点击