PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : gtk -lXi nicht gefunden



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?

nomad
02-01-2003, 10:12
hi,
so wie ich das sehe,
solltest du das file anders compilieren.
probiers mal mit

compile : cc listxxx.c `gtk-config --cflags --libs` -o listxxx
run : ./listxxx

hoffentlich hilfts
nomad

brotzi
02-01-2003, 16:26
guck mal ob es bei dir in /usr/X11R6/lib eine libXi.so gibt.