在g ++编译期间未声明的GTK_OBJECT

时间:2016-06-03 22:21:10

标签: g++ gtk

我在编译GTK +应用程序时遇到错误,说我有未声明的函数/定义(我相信GTK_OBJECT可能是头文件中的定义)。这是我的代码(main.c):

setoptfirst(int); executefirstopt(5);

我在bash中使用以下命令:

    #include <gtk/gtk.h>

static gint delete_event_cb(GtkWidget* w, GdkEventAny* e, gpointer data);

int main(int argc, char *argv[]) {
    //Create widgets
    GtkWidget *window;

    gtk_init(&argc, &argv); 

    //Initialize widgets
    window = gtk_window_new(GTK_WINDOW_TOPLEVEL);

    //Configure widgets
    gtk_window_set_title(GTK_WINDOW(window), "Hello World");

    //Display widgets
    gtk_widget_show(window);

    //Set up signals
    gtk_signal_connect(GTK_OBJECT(window), "delete_event", GTK_SIGNAL_FUNC(delete_event_cb), NULL);

    gtk_main();
    return 0;
}

static gint delete_event_cb(GtkWidget* w, GdkEventAny* e, gpointer data) {
    gtk_main_quit();
    turn FALSE;
}

我确实安装了gtk + 3.0的开发人员版本。非常感谢任何帮助。

编辑:这是我收到的错误消息:

g++ `pkg-config --libs --cflags gtk+-3.0` main.c -o binary

1 个答案:

答案 0 :(得分:1)

我自己解决了,但很难找到方法。我给g ++提供了错误的参数顺序,也错过了一个参数。这是对我有用的bash命令:

g++ `pkg-config --libs --cflags gtk+-3.0` main.c -o binary `pkg-config --libs gtk+-3.0`