2012-06-19 195 views
0
#include <gtk/gtk.h> 
#include <gtksourceview/gtksourceview.h> 

static gboolean delete_event(GtkWidget *widget, GdkEvent *event, gpointer data) { 
    gtk_main_quit(); 
} 

int main(int argc, char *argv[]) { 
    gtk_init (&argc, &argv); 

    /* Set up window */ 
    GtkWidget *window; 
    window = gtk_window_new(GTK_WINDOW_TOPLEVEL); 
    g_signal_connect(window, "delete-event", G_CALLBACK(delete_event), NULL); 

    /* Draw widgets */ 
    gtk_widget_show (window); 

    gtk_main(); 

    return 0; 
} 

這是我的代碼,我編譯如下:錯誤:未知類型名稱「GtkObject」

gcc -o file `pkg-config --cflags --libs gtk+-3.0 gtksourceview-2.0` file.c 

什麼我做錯了任何想法?謝謝。

In file included from /usr/include/gtksourceview-2.0/gtksourceview/gtksourceview.h:30:0, 
       from lidedit.c:2: 
/usr/include/gtksourceview-2.0/gtksourceview/gtksourcecompletion.h:60:2: error: unknown type name ‘GtkObject’ 
+0

您可能會在解決此問題後得到鏈接器錯誤。這些庫需要使用構建命令行上的庫來保存文件。所以在構建時需要兩個'pkg-config'調用,一個用於C標誌,另一個用於庫。 –

回答

4

gtksourceview 2需要GTK + -2。爲了與GTK + -3一起使用,您應該使用gtksourceview 3.

+0

謝謝,它工作! –