problem compiling on FreeBSD 4.1-RELEASE

Peter Van Epp vanepp at sfu.ca
Fri Jul 28 14:33:06 EDT 2000


	I'm getting a compiler complaint when trying to compile argus on the
latest FreeBSD release, yet I don't see a difference (and therefore what to 
do):

demoa# make
gcc -O -I. -I../include -DHAVE_SYS_IOCCOM_H=1 -DHAVE_SYS_SOCKIO_H=1 -DHAVE_ETHER_HOSTTON=1 -DHAVE_STRERROR=1 -DHAVE_SOCKADDR_SA_LEN=1 -c ./addrtoname.c
./addrtoname.c:63: conflicting types for `ether_ntohost'
/usr/include/net/ethernet.h:114: previous declaration of `ether_ntohost'
*** Error code 1

Stop in /usr/local/src/argus-1.8.1/common.

/usr/include/net/ethernet.h:114: previous declaration of `ether_ntohost'

looks like this (and the gcc versions appear to be the same between 4.0 and 4.1)

#include <sys/cdefs.h>

/*
 * Ethernet address conversion/parsing routines.
 */
__BEGIN_DECLS
struct  ether_addr *ether_aton __P((const char *));
int     ether_hostton __P((const char *, struct ether_addr *));
int     ether_line __P((const char *, struct ether_addr *, char *));
char    *ether_ntoa __P((const struct ether_addr *));
int     ether_ntohost __P((char *, const struct ether_addr *));
__END_DECLS

#endif /* !_KERNEL */

	On a working 4.0 machine things look the same to me (although the 
.h file has changed substantially this def still looks the same to me):

#ifndef _KERNEL
#include <sys/cdefs.h>

/*
 * Ethernet address conversion/parsing routines.
 */
__BEGIN_DECLS
struct  ether_addr *ether_aton __P((char *));
int     ether_hostton __P((char *, struct ether_addr *));
int     ether_line __P((char *, struct ether_addr *, char *));
char    *ether_ntoa __P((struct ether_addr *));
int     ether_ntohost __P((char *, struct ether_addr *));
__END_DECLS
#endif

	Anybody have an idea of whats wrong? 

Peter Van Epp / Operations and Technical Support 
Simon Fraser University, Burnaby, B.C. Canada



	



More information about the argus mailing list