1

我正在尝试编译以下代码,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_show并且gtk_main

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

1) 当用 gtk 编译 c 程序时,我应该把它们保存在哪里。在某处的mingw文件夹中?

2)我目前已将此附加到我的系统变量路径中:C:\gtk\bin\;C:\msys\1.0\bin;C:\mingw\bin 是否正确?

3) mingw32 找不到库。当我下载 msys 和 mingw 时,我应该对它们做些什么吗?

干杯。

4

1 回答 1

0

https://mail.gnome.org/archives/gtk-app-devel-list/2010-February/msg00036.html

于 2012-07-22T08:16:03.340 回答