MOO-cows Mailing List Archive

[Prev][Next][Index][Thread]

Re: More pgperf compile problems...



A short time ago, at a computer terminal far, far away, Pavel Curtis wrote:
>> Okay, I took out the -p flag and that got rid of the mcrt1.o problem.  
>> Now it's getting undefined symbols.  Maybe some libraries aren't 
>> installed?  Where should I get them so I can install them?  Any ideas?
>> 
>> Once again, it's on a Sun Sparc with Solaris.
>
>> Undefined                       first referenced
>>  symbol                             in file
>> bzero                               hashtable.o
>> srandom                             perfect.o
>> bcopy                               getopt.o
>> random                              perfect.o
>> index                               getopt.o
>> mcount                              options.o
>
>The first five of these are in /lib/libc.a, the standard C library, on my
>Solaris machine (2.5.1); I don't know why your system isn't finding them.

Under Solaris 2.4, as I recall, these five were considered BSD-specific 
and non-standard, supported only with the BSD compatibility package 
(/usr/ucb/cc, /usr/ucbinclude, and /usr/ucblib).  The conventional
wisdom as I heard it was to use memset, srand, memmove, rand, and strchr,
respectively, instead of these five.  Often this could be achieved via
compiling with -DSVR4 or -DSYSV, if the code was setup appropriately, 
or by defining your own macros, like
	#define index(s,c)  strchr((s),(c))
to do the translating.  I'm not familiar with the pgperf code, though,
so I can't say what the best solution might be.

It looks Solaris 2.5 has changed this by now including these five BSD 
functions in its standard library, so it's yet another reason to
upgrade I guess. :)

______________________________________________________________________________
Will Day       <PGP mail preferred>      OIT, Georgia Tech, Atlanta 30332-0715
willday@rom.oit.gatech.edu               http://rom.oit.gatech.edu/~willday/
   =-> Opinions expressed are mine alone and do not reflect OIT policy <-=
Those who would give up essential Liberty, to purchase a little temporary 
Safety, deserve neither Liberty nor Safety.
    Benjamin Franklin, Pennsylvania Assembly, Nov. 11, 1755


References:

Home | Subject Index | Thread Index