Sorry for the slow response. This worked. Actually I had to include in netlib.a and pcap.a and only link in libpthread. Nevertheless the problem is fixed
My only excuse is that I didn't write that mess, it was distributed by my ISP. Thanks much for the help Rupe ---------- From: Stephen Pitts [SMTP:[EMAIL PROTECTED] Sent: Thursday, August 26, 1999 3:03 AM To: [EMAIL PROTECTED]; [EMAIL PROTECTED] Cc: debian-user@lists.debian.org Subject: Re: Wierd compile error with libpthread.a On Thu, Aug 26, 1999 at 12:13:34AM -0400, Rupert Brooks wrote: > Hi, > > Please note to CC replies to [EMAIL PROTECTED] and [EMAIL PROTECTED] I > don't follow this list all that regularly - thanks > > I am having problems compiling a c program under Debian-Potato. I have > traced it this far: If I compile any C program, and link in the library > /usr/lib/libpthread.a then an executable will be produced, but when > executed will simply lock up. Not quite. From what I can tell, you aren't linking pthread to your program, you are including it as one of the object files in your program. So, gcc is shoving the whole libpthread.a in your binary. This works better: cc -funroll-loops -fomit-frame-pointer -pipe -Wall -g main.o pppoe-discover.o -L. -lpcap -lnet -lpthread -o pppoe Instead of directly specifying the path of libraries, the best way is to link to them with '-l'. The linker looks first for a shared (.so) library (because the -shared option is implied), and then for a static (.a) library. '-L.' tells the linker to also look for library files in the current directory. The resulting executable is dynamically linked with pthread (a standard libc component..no need to statically link this) and libc, and statically linked with everything else, per 'ldd pppoe'. -- Stephen Pitts [EMAIL PROTECTED] webmaster - http://www.mschess.org