mingw32显示对所有gtk函数的未定义引用

时间:2012-07-19 18:38:25

标签: c gcc gtk mingw msys

我正在尝试编译以下代码,base.c

#include <glib/gerror.h>
#include <gtk/gtk.h>
#include <gdk-pixbuf/gdk-pixbuf.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);
}
/* example-end */

我使用

编译它
gcc -Wall base.c -o base `pkg-config --cflags --libs gtk+-2.0`

我在MinGW中返回的消息是

C:\ Users \ Sunny \ AppData \ Local \ Temp \ cc4eIpLM.o:base.c :(。text + 0x34):未定义引用gtk_init_abi_check

collect2: ld return 1 exit status

我收到gtk_window_newgtk_widget_showgtk_main

的相同消息

我觉得这可能与以下问题有关:

1)用gtk编译c程序时,我应该保存它们。在mingw文件夹的某个地方?

2)我当前将此附加到我的系统变量路径:C:\gtk\bin\;C:\msys\1.0\bin;C:\mingw\bin 这是对的吗?

3)mingw32找不到库。当我下载msys和mingw

时,我应该对它们做些什么

干杯。