Path: utzoo!utgpu!water!watmath!clyde!att!osu-cis!tut.cis.ohio-state.edu!rutgers!ucla-cs!sonia!netsourc From: netsourc@sonia.math.ucla.edu (Net Sources Collector) Newsgroups: comp.sources.d Subject: Re: recent ARC posting problem Message-ID: <14197@shemp.CS.UCLA.EDU> Date: 7 Jul 88 17:02:38 GMT References: <6022@pyr.gatech.EDU> Sender: news@CS.UCLA.EDU Reply-To: netsourc@sonia.MATH.UCLA.EDU (Net Sources Collector) Organization: UCLA Mathematics Department Lines: 44 > It was lovely to see all that compiling going on so nicely. However, > when it got to the link (?) process (you know - the 'cc -o arc' followed > by all the '.o' files) it finished up with > Undefined: > _memset > *** Exit 1 memset is part of the C library routines in /lib/libc.a. At our installation we are running UNIX BSD 4.2 and 4.3 on a Sun and VAX 11/750 respectively and both versions seem to have this routine in libc.a. Here is what memset does (as quoted from the manual page): char *memset(s,c,n) char *s; int c,n; memset sets the first 'n' characters in memory area 's' to the value of character 'c'. It returns 's'. There are two solutions to your problem: 1) Consult your local guru to see if you have memset or a similar routine in one of the system libraries (Sorry, but I'm not familiar with Pyramid). 2) Write your own little memset module (similar to the one below) in C and link it to all of the files which appear to be using it in the code. From what I have observed, arclzw.c, arcmisc.c, arcsqs.c are declaring the routine, but arcext.c is the only one that is actually calling it. Good luck 8-). char *memset(s,c,n) char *s; int c,n; { register char *t; t = s while (n--) *t++ = c; return(s); } Edward Dergharapetian (213) 206-6067 UCLA Mathematics Department. 9407A Boelter Hall. 405 Hilgard Ave. Los Angeles, CA 90024-1555 UUCP:...!{ihnp4,ucbvax,sdcrdcf,{hao!cepu}}!ucla-cs!math.ucla.edu!edward ARPA: edward@math.ucla.edu BITNET: edward%math.ucla.edu@INTERBIT