Path: utzoo!attcan!utgpu!jarvis.csri.toronto.edu!mailrus!tut.cis.ohio-state.edu!purdue!haven!adm!xadmx!RSILVERMAN@eagle.wesleyan.edu From: RSILVERMAN@eagle.wesleyan.edu (Richard Silverman) Newsgroups: comp.unix.questions Subject: System V (3B2), CAP, Streams Message-ID: <20228@adm.BRL.MIL> Date: 12 Jul 89 19:16:12 GMT Sender: news@adm.BRL.MIL Lines: 32 Hello, all... I am trying to get CAP running on an AT&T 3B2 running System V R3.1. With some minor modifications, all the libraries compiled just fine. When building the sample programs, however, I have a problem. lwpr.c compiles with no problem, but when I attempt to link it, the Streams system calls getmsg, putmsg and sigset are not found. As far as I understand it: CAP depends on the BSD socket-style network interface. This is provided by the WIN/3B networking library libnet.a; these calls resolve properly. This library, in turn, relies on the Streams transport interface defined in libnsl_s.a (t_bind, t_open, etc.). These calls resolve, also -- except putmsg and getmsg, even though a dump of the nsl library shows the symbols are there! Confused, I stepped back to try a test. According to the Streams programmer's guide, all I need to do to use the transport interface is to link to libnsl_s.a. However, if I take this code: main () { getmsg(); } and compile it with "cc test.c -lnsl_s", I get the same problem: getmsg is not found. Now I'm really confused. I have restored libnsl_s.a from the original release 3.1 upgrade disks; no help. Can anyone out there shed some light? Richard Silverman arpa: rsilverman@eagle.wesleyan.edu Computing Center bitnet: rsilverman@wesleyan Wesleyan University CIS: [72727,453] Middletown, CT 06457