Windows7下NetBeans7开发GTK的配置过程

来源:互联网 发布:模糊神经网络算法 编辑:程序博客网 时间:2024/04/29 22:50


      最近对GTK很感兴趣,所以就准备在windows下也弄一个开发GTK的环境,通过对网上资料的查找和研究,感觉在windows下安装配置GTK的开发环境不难,现将配置过程写下来作备忘录。


    1、windows7企业版。(嘿嘿,我的是Dell的OEM版)

    2、下载JDK、NetBeans7.1、MinGW、GTk

1)JDK:

下载地址:http://www.oracle.com/technetwork/java/javase/downloads/index.html


2)NetBeans7.1:

下载地址:http://netbeans.org/downloads/    这是最新版7.1,选择C/C++版本的下载就可以。


3)MinGW:

下载地址:点击打开链接 http://www.mingw.org/ 

                                      

在MinGW官方网页的左侧,选择“DownLoads”进入下载页面


进入sourceforge后,点击“Installer”。


选择“mingw-get-inst”,进行下载。


选择最新的一个。这个是通过网络在线下载并安装的。

4)GTK:


选择windows的32位下载




选择All in one bundle 下载集合绑定包。




2、安装与配置

1)安装并配置MinGW



这里选择“Dowload”的一项,进行在线下载安装。

选择安装路径

选择安装项目,此处建议全部安装。全勾

开始下载安装。

完成

2)安装JDK:一路下一步,没啥好说的。

3)安装配置:NetBeans

安装过程就不再说了,一路下一步,就可以。 下面说一下配置。

在“生成工具”选项卡的右侧,添加一个工具集合。实际这里是添加MinGW的路径。

点击“浏览”按钮。

选择MinGW目录下的bin文件夹。

然后,确定。

其中Make命令需要单独添加的。

一般在这个位置MinGW\msys\1.0\bin\make.exe

同时还要确保将D:\MinGW\msys\1.0\bin 这个路径添加到windows的环境变量中去。

然后配置“代码帮助”

这里添加Gtk目录下的Include文件夹下面所有第一层的文件夹。

还有Gtk目录下的Lib文件夹下gtk-2.0和glib-2.0目录下的Include目录。

如果你还用Gtkmm的话,建议再在C++编译器中也按如上添加。

然后确定。

这里可以检测一下,MinGW配置的是否正确,可以新建一个空文件,打印输出一个HelloWorld,如可以正常打印,说明MinGW安装配置的没有问题。

下面是最重要的一项,把一些参数添加到项目中去。NetBeans在编译项目时,不会出错。

1)新建项目

项目属性----生成-----C编译器------编译行-----其他选项----添加:

`pkg-config--libs gtk+-2.0`

这里开头的符号,是Tab键上面的那个键。

项目属性----生成-----链接器-----库----库中添加

`pkg-config--libs gtk+-2.0`

这里开头的符号,是Tab键上面的那个键。

编译行----其他选项:`pkg-config --libs gtk+-2.0`

 

这里可能要加,因为有次我没有加,在编译时出错了,所以如果出错了,再把这个“其他选项”加上,反正也不会有问题。 

最后在Main.c 中加入如下代码:

/*  * File:   main.c * Author:zm * * Created on 2012年2月22日, 下午9:55 */#include <stdio.h>#include <stdlib.h>#include <gtk/gtk.h>/* *  */int main(int argc, char** argv){        GtkWidget *window;    GtkWidget *table;    GtkWidget *frame1;    GtkWidget *frame2;    GtkWidget *frame3;    GtkWidget *frame4;    gtk_init(&argc, &argv);        window = gtk_window_new(GTK_WINDOW_TOPLEVEL);    gtk_window_set_position(GTK_WINDOW(window), GTK_WIN_POS_CENTER);    gtk_window_set_default_size(GTK_WINDOW(window), 250, 250);    gtk_window_set_title(GTK_WINDOW(window), "GtkForm");    gtk_container_set_border_width(GTK_CONTAINER(window), 10);    table = gtk_table_new(2, 2, TRUE);    gtk_table_set_row_spacings(GTK_TABLE(table), 10);    gtk_table_set_col_spacings(GTK_TABLE(table), 10);    gtk_container_add(GTK_CONTAINER(window), table);    frame1 = gtk_frame_new("Shadow In");    gtk_frame_set_shadow_type(GTK_FRAME(frame1), GTK_SHADOW_IN);    frame2 = gtk_frame_new("Shadow Out");    gtk_frame_set_shadow_type(GTK_FRAME(frame2), GTK_SHADOW_OUT);    frame3 = gtk_frame_new("Shadow Etched In");    gtk_frame_set_shadow_type(GTK_FRAME(frame3), GTK_SHADOW_ETCHED_IN);    frame4 = gtk_frame_new("Shadow Etched Out");    gtk_frame_set_shadow_type(GTK_FRAME(frame4), GTK_SHADOW_ETCHED_OUT);    gtk_table_attach_defaults(GTK_TABLE(table), frame1, 0, 1, 0, 1);    gtk_table_attach_defaults(GTK_TABLE(table), frame2, 0, 1, 1, 2);    gtk_table_attach_defaults(GTK_TABLE(table), frame3, 1, 2, 0, 1);    gtk_table_attach_defaults(GTK_TABLE(table), frame4, 1, 2, 1, 2);    g_signal_connect_swapped(G_OBJECT(window), "destroy",            G_CALLBACK(gtk_main_quit), G_OBJECT(window));    gtk_widget_show_all(window);    gtk_main();      return (EXIT_SUCCESS);}

以上是我配置的过程,上面的代码已经测试通过了。小弟还学习中,可能还有错误的地方,请大牛们不要吝啬自己的笔墨,呵呵,知无不言。。。。谢谢啦。。。 


2012-03-08号

以上配置过程中发现一个问题,就是在新建完项目后,要配置GTK的编译和链接器的这两个地方,这里给出的错了,

需要改成如下 :

编译器: `pkg-config --cflags gtk+-2.0`
链接器:  `pkg-config --libs gtk+-2.0`




原创粉丝点击