Am Fre, 03 Mär 2000 schrieb Uwe Kietzmann:
bash-2.02# make linux make "CC=gcc" \ "CCOPTS=-O2" \ "OSLIBS=-lbsd" \ "INCSPATH=-I/local/tcl/include -I/usr/include/bsd" \ "OSDEF=-DLINUX" \ "LOCKDIR=/usr/spool/uucp" \ real_all gcc ceptd.o level2.o modeminit.o socket.o term.o tcl.o isdn.o -o ceptd -L/local/tcl/lib -lbsd -ltcl -lm /usr/i486-linux/bin/ld: cannot open -lbsd: Datei oder Verzeichnis nicht gefunden collect2: ld returned 1 exit status make[1]: *** [ceptd] Error 1 make[1]: Leaving directory `/local/cept/ceptd' make: *** [linux] Error 2 bash-2.02#
Was will mir diese Fehlermeldung sagen
Diese Fehlermeldung sagt dir, der Linker (ld) kann die Datei libbsd.so oder libbsd.a nicht finden, weder in /lib, /usr/lib, /usr/local/lib noch /local/tcl/lib.
Lösungen:
* Probier mal OSLIBS auf "" zu setzen, evtl. klappt das linken auch ohne libbsd ( OSLIBS= ) * Falls dann undefinierte Symbol kommen, brauchst du die libbsd.irgendwas oder 'ne andere Lib wo die Symbole drin sind. Suche bei dir also erst mal nach einer Datei libbsd.[a|so|Zahl.irgendwas] und nimm das Verzichnis in dem die Datei ist mit in OSLIBS auf. Bei mir ist eine libbsd.a in /usr/lib/ (hehe, wenn sie bei dir dort wäre hätte sie der Linker gefunden :) Wenn sie also in /hier/ist/meine/libbsd/ ist,setze dann OSLIBS=-L/hier/ist/meine/libbsd/ -lbsd Evtl. findet sich auch auf deinen SuSE-CDs ein paket was diese Datei enthält. Wenn du keine findest, such mal nach einer libDatei die die folg. Symbol enthält: getpgid,setpgid,getpgrp,setpgrp Diese sind nämlich in meiner libbsd.a. Diese sind z.B. auch in meiner /lib/libc-2.0.7.so.
Bye, Stephan