Compiling amanda with kernel 2.0.33 and glibc-2.0.5

Jochen Hein (jochen.hein@delphi.central.de)
03 Jan 1998 18:11:45 +0100


--Multipart_Sat_Jan__3_18:11:45_1998-1
Content-Type: text/plain; charset=US-ASCII

The error-messages:
/bin/sh ../libtool --mode=compile gcc -DHAVE_CONFIG_H
-I. -I. -I../config -I./../regex-src -O -c alloc.c
gcc -DHAVE_CONFIG_H -I. -I. -I../config -I./../regex-src -O -c -fPIC
-DPIC alloc.c
In file included from amanda.h:181,
from alloc.c:34:
/usr/include/netinet/in.h:198: conflicting types for `ntohl'
/usr/include/asm/byteorder.h:22: previous declaration of `ntohl'
/usr/include/netinet/in.h:200: conflicting types for `htonl'
/usr/include/asm/byteorder.h:24: previous declaration of `htonl'
make[1]: *** [alloc.lo] Error 1

in asm/byteorder.h the prototypes are defined anyway. I fixed that by
adding an #if __KERNEL__ around that in asm-i386. I don't know about
other consequences. The patch follows at the end.

Jochen

PS: Please include me with a CC: in a reply, since I don't read
linux-kernel.

zeus:(2):/usr/src# diff -u linux/include/asm-i386/byteorder.h.orig
linux/include/asm-i386/byteorder.h
--- linux/include/asm-i386/byteorder.h.orig Sat Jan 3 18:04:49
1998
+++ linux/include/asm-i386/byteorder.h Sat Jan 3 18:05:12 1998
@@ -19,10 +19,12 @@
#include <linux/config.h>
#endif

+#ifdef __KERNEL
extern unsigned long int ntohl(unsigned long int);
extern unsigned short int ntohs(unsigned short int);
extern unsigned long int htonl(unsigned long int);
extern unsigned short int htons(unsigned short int);
+#endif

extern __inline__ unsigned long int __ntohl(unsigned long int);
extern __inline__ unsigned short int __ntohs(unsigned short int);

--Multipart_Sat_Jan__3_18:11:45_1998-1
Content-Type: text/plain; charset=US-ASCII

The only problem with trouble-shooting is that the trouble shoots back!

--Multipart_Sat_Jan__3_18:11:45_1998-1--