[hobbit] problem compiling HP-UX 11.11 using gcc
Mike Arnold
hobbit at razorsedge.org
Mon Jun 26 16:10:57 CEST 2006
Henrik Stoerner wrote:
> On Thu, Jun 22, 2006 at 09:30:36AM -0700, Mike Arnold wrote:
>> It looks like this is still an issue, even with the allinone.patch of 14
>> June applied to the 4.2 beta. Henrik, any ideas on what may be causing
>> this and how to fix?
>
>> -I/usr/include -I/usr/local/include -c -o bbtest-net.o bbtest-net.c
>> bbtest-net.c: In function 'send_rpcinfo_results':
>> bbtest-net.c:1794: warning: assignment makes pointer from integer
>> without a cast
>> bbtest-net.c:1801: error: dereferencing pointer to incomplete type
>> bbtest-net.c:1813: error: dereferencing pointer to incomplete type
>> bbtest-net.c:1818: error: dereferencing pointer to incomplete type
>> gmake[1]: *** [bbtest-net.o] Error 1
>
> Looks like your HP-UX compiler cannot find the definition of the
> RPC service entry structure "rpcent". This is usually defined in either
> the <netdb.h> or <rpc/netdb.h> file.
>
[mike at hpux11i-hppa ~]$ grep -A5 "struct rpcent" /usr/include/netdb.h
struct rpcent {
char *r_name; /* name of server for this rpc program */
char **r_aliases; /* alias list */
int r_number; /* rpc program number */
};
[snip]
> What's in your include/config.h file ? There should be a line with
> either "#define HAVE_RPCENT_H" or "#undef HAVE_RPCENT_H".
>
[mike at hpux11i-hppa ~]$ cat hobbit-4.2-beta-20060605/include/config.h
/* This file is auto-generated */
#ifndef __CONFIG_H__
#define __CONFIG_H__ 1
#define HAVE_SOCKLEN_T 1
#define HAVE_SNPRINTF 1
#define HAVE_VSNPRINTF 1
#undef HAVE_RPCENT_H
#undef HAVE_SYS_SELECT_H
#undef HAVE_UINT32_TYPEDEF
#endif
> Is there a file /usr/include/netdb.h on your system ? How about
> /usr/include/rpc/netdb.h ?
>
[mike at hpux11i-hppa ~]$ ls -l /usr/include/netdb.h /usr/include/rpc/rpcent.h
/usr/include/rpc/rpcent.h not found
-r--r--r-- 1 bin bin 20638 Oct 20 2004
/usr/include/netdb.h
> (Why must HP-UX have all the standard definitions in non-standard
> places ? Sigh ...)
>
I spent all of yesterday chasing this one down. My C skills are horrible,
but if I add this to bbtest-net.c at line 101, the line 1794 warning goes
away:
extern struct rpcent *getrpcbyname (const char *);
The other three lines appear to have "rpcinfo->r_number" in common, but I
have yet to decipher the error messages' meaning.
I can arrange for access to the machine, if you would like.
--
-m
... so long as the people do not care to exercise their freedom, those
who wish to tyrranize will do so; for tyrants are active and ardent,
and will devote themselves in the name of any number of gods, religious
and otherwise, to put shackles upon sleeping men.
-- Voltarine de Cleyre
More information about the Xymon
mailing list