Hallo LUG,
Frage 1: Folgender output:
[falk@Voyager C]$ cat read.c
#include <stdio.h>
#include <readline/readline.h>
int main(){
char *string;
string = readline("prompt $");
printf("%s\n",string);
exit(0);
}
[falk@Voyager C]$ gcc -lreadline read.c
/usr/lib/gcc-lib/i586-mandrake-linux-gnu/3.3.2/../../../libreadline.so:
undefined reference to `tgetnum'
/usr/lib/gcc-lib/i586-mandrake-linux-gnu/3.3.2/../../../libreadline.so:
undefined reference to `tgoto'
/usr/lib/gcc-lib/i586-mandrake-linux-gnu/3.3.2/../../../libreadline.so:
undefined reference to `tgetflag'
/usr/lib/gcc-lib/i586-mandrake-linux-gnu/3.3.2/../../../libreadline.so:
undefined reference to `BC'
/usr/lib/gcc-lib/i586-mandrake-linux-gnu/3.3.2/../../../libreadline.so:
undefined reference to `tputs'
/usr/lib/gcc-lib/i586-mandrake-linux-gnu/3.3.2/../../../libreadline.so:
undefined reference to `PC'
/usr/lib/gcc-lib/i586-mandrake-linux-gnu/3.3.2/../../../libreadline.so:
undefined reference to `tgetent'
/usr/lib/gcc-lib/i586-mandrake-linux-gnu/3.3.2/../../../libreadline.so:
undefined reference to `UP'
/usr/lib/gcc-lib/i586-mandrake-linux-gnu/3.3.2/../../../libreadline.so:
undefined reference to `tgetstr'
collect2: ld returned 1 exit status
Was wollen mir diese Fehlermeldungen sagen? Muss ich noch weitere Bibliotheken
beim compilieren mit angeben? Die Beispiele zu readline lassen sich erst
recht nicht compilieren, können mir also auch nicht weiterhelfen. (readline.h
ist in diesem Ordner zu finden!)
Frage 2: Wie bekomme ich bei Funktionen optionale Parameter (in C) hin?
Frage 3: Worin besteht der Unterschied zwischen den Standard-C-Funktionen
(bzw. den Basistypen) gegenüber denen von glib? (Einer meiner Profs hat ein
C-Programm geschrieben, in dem er diese Bibliothek genutzt hat, obwohl alles
auch in "normal"-C verfügbar wäre.) Gibt es solche auch bei KDE (würde mich
wundern, da KDE m.e. in C++ geschrieben ist)?
Frage 4: Gibt es eine gute Internet-Adresse, wo ich mich im Falle solcher
Fragen informieren kann? (Die ANSI-C-Bestimmungen werden ja bestimmt nicht
offen im Web verfügbar sein, zumindest hat mein gegoogle nichts gefunden.)
Tschau,
Falk (von C++ die Sch***ze voll)