[httperf] Problem in compiling in Solaris 7

Martin F. Arlitt httperf@napali.hpl.hp.com
Wed, 15 Aug 2001 14:19:49 +0000


Chi Hung

I do not use Solaris, so I do not know the
correct solution to the issues you are facing.  However,
I did find a couple of suggestions on google, perhaps
one of them will point you in the right direction.

----------

Solaris 7/SPARC has inet_aton() in /usr/include/arpa/inet.h if
__STDC__ is defined.  It appears to be in libresolv.

----------

On Solaris, /usr/lib/libresolv.so.2 has inet_aton().
/usr/lib/libresolv.so.1 does not.  I suspect that this would compile
if the system were configured so that /usr/lib/libresolv.so is
symbolically linked to /usr/lib/libresolve.so.2

----------

> inet_aton() converts the Internet host address cp from the
> standard numbers-and-dots notation into binary data and
> stores it in the structure that inp points to. inet_aton
> returns nonzero if the address is valid, zero if not.
>
> The inet_addr() function converts the Internet host
> address cp from numbers-and-dots notation into binary data
> in network byte order. If the input is invalid,
> INADDR_NONE (usually -1) is returned. This is an obsolete
> interface to inet_aton, described immediately above; it is
> obsolete because -1 is a valid address (255.255.255.255),
> and inet_aton provides a cleaner way to indicate error
> return.
>
> rules.c uses inet_addr(), but above it says it's obsolete.
> Is it more portable?

Speaking of Solaris, there is no inet_aton() function. Neither on 5.6
nor 5.7.  inet_addr() is your friend here.
----------

Martin

Chan Chi Hung wrote:

> Hi httperf-experts,
>
> I posted this problem a week ago without any reply
>
> .....
> making all in gen
> gcc -c -DHAVE_CONFIG_H -I.. -I../../gen -I../.. -I../../lib   -DNDEBUG
> -D_GNU_SOURCE -D_XOPEN_SOURCE -g -O2 -Wall ../../gen/call_seq.c
> In file included from ../../httperf.h:32,
>                  from ../../gen/call_seq.c:29:
> /usr/include/sys/resource.h:144: field `ru_utime' has incomplete type
> /usr/include/sys/resource.h:145: field `ru_stime' has incomplete type
> In file included from /usr/include/sys/stream.h:22,
>                  from
> /usr/local/lib/gcc-lib/sparc-sun-solaris2.7/2.95.3/include/sys/stream.h:5,
>
>                  from /usr/include/netinet/in.h:38,
>                  from ../../core.h:27,
>                  from ../../gen/call_seq.c:31:
> /usr/include/sys/vnode.h:167: parse error before `timestruc_t'
> /usr/include/sys/vnode.h:167: warning: no semicolon at end of struct or
> union
> /usr/include/sys/vnode.h:168: warning: data definition has no type or
> storage class
> ....
>
> However, I managed to compile most of the C source files by removing the
> -g -O2 -Wall flags. However, I cannot locate the inet_aton function on
> my Solaris 7 system which the core.c and idelconn.c called this
> function. I can find the inet_ntoa, but not inet_aton. Appreciate if
> anyone can let me know how I resolve this issue. Many thanks.
> --Chi Hung
>
> --
> To unsubscribe: echo unsubscribe httperf | mail majordomo@linux.hpl.hp.com


--
To unsubscribe: echo unsubscribe httperf | mail majordomo@linux.hpl.hp.com