nul
28-12-2002, 17:23
Ein gtk-Problem:
Hier befinden sich die Daten, die laut --cflags und --lib
herauszufinden sind.
gtk-config --cflags
-I/usr/include/gtk-1.2
-I/usr/include/glib-1.2
-I/usr/lib/glib/include
-I/usr/X11R6/include
gtk-config --libs
-L/usr/lib
-L/usr/X11R6/lib -lgtk -lgdk -rdynamic -lgmodule -lglib -ldl -lXi -lXext -lX11 -lm
Und hier mein einfaches Bsp. (beim lernen = Bsp.=kindisch)
/* Seite: 720 Name: list2101.c */
/* list2101.c - Ein minimales GTK+-Programm. */
#include <gtk/gtk.h>
void loeschen_funk(GtkWidget *widget, gpointer daten);
int main(int argc, char *argv[])
{
GtkWidget *hauptfenster;
gtk_init(&argc, &argv);
hauptfenster = gtk_window_new(GTK_WINDOW_TOPLEVEL);
gtk_widget_set_usize(GTK_WIDGET(hauptfenster), 180, 120);
gtk_window_set_title(GTK_WINDOW(hauptfenster), __FILE__);
gtk_signal_connect(GTK_OBJECT(hauptfenster), "destroy", GTK_SIGNAL_FUNC(loeschen_funk), NULL);
/* Fenster sichtbar machen. */
gtk_widget_show(hauptfenster);
gtk_main();
g_print("main() wird nun beendet.\n");
return 0;
}
void loeschen_funk(GtkWidget *widget, gpointer zdaten)
{
g_print("Beenden : Destroy-Signal wurde empfangen.\n");
gtk_main_quit();
}
Allerdings, wenn ich versuche die Datei zu kompilieren:
gcc -Wall -ggdb `gtk-config --cflags` `gtk-config --libs` list2101.c
-o list2101
erhalte ich folgende Fehlermeldung:
/usr/lib/gcc-lib/i486-suse-linux/3.2/../../../../i486-suse-linux/bin/ld:
cannot find -lXi
collect2: ld returned 1 exit status
-lXi zeigt es ja an, was kann ich da tun?
Hier befinden sich die Daten, die laut --cflags und --lib
herauszufinden sind.
gtk-config --cflags
-I/usr/include/gtk-1.2
-I/usr/include/glib-1.2
-I/usr/lib/glib/include
-I/usr/X11R6/include
gtk-config --libs
-L/usr/lib
-L/usr/X11R6/lib -lgtk -lgdk -rdynamic -lgmodule -lglib -ldl -lXi -lXext -lX11 -lm
Und hier mein einfaches Bsp. (beim lernen = Bsp.=kindisch)
/* Seite: 720 Name: list2101.c */
/* list2101.c - Ein minimales GTK+-Programm. */
#include <gtk/gtk.h>
void loeschen_funk(GtkWidget *widget, gpointer daten);
int main(int argc, char *argv[])
{
GtkWidget *hauptfenster;
gtk_init(&argc, &argv);
hauptfenster = gtk_window_new(GTK_WINDOW_TOPLEVEL);
gtk_widget_set_usize(GTK_WIDGET(hauptfenster), 180, 120);
gtk_window_set_title(GTK_WINDOW(hauptfenster), __FILE__);
gtk_signal_connect(GTK_OBJECT(hauptfenster), "destroy", GTK_SIGNAL_FUNC(loeschen_funk), NULL);
/* Fenster sichtbar machen. */
gtk_widget_show(hauptfenster);
gtk_main();
g_print("main() wird nun beendet.\n");
return 0;
}
void loeschen_funk(GtkWidget *widget, gpointer zdaten)
{
g_print("Beenden : Destroy-Signal wurde empfangen.\n");
gtk_main_quit();
}
Allerdings, wenn ich versuche die Datei zu kompilieren:
gcc -Wall -ggdb `gtk-config --cflags` `gtk-config --libs` list2101.c
-o list2101
erhalte ich folgende Fehlermeldung:
/usr/lib/gcc-lib/i486-suse-linux/3.2/../../../../i486-suse-linux/bin/ld:
cannot find -lXi
collect2: ld returned 1 exit status
-lXi zeigt es ja an, was kann ich da tun?