> In file included from /usr/include/linux/if.h:23, > from /usr/include/linux/netdevice.h:30, > from if.c:28: > /usr/include/linux/socket.h:9: redefinition of `struct sockaddr'
Seems if.c includes <linux/netdevice.h>, which in turn goes to <linux/socket.h>. With glibc you should generally prefer the headers in sys to those in linux (the linux header is included by the sys header if needed). Maybe it helps to explicitly include <sys/socket.h> before netdevice.h (since there is no <sys/netdevice.h>). If this doesn't help, I'd say it's some inconsistency between glibc headers and Linux headers, which should be reported to the glibc maintainers. (It should be possible to include a <linux/> header if there's no corresponding <sys/> header.) A temporary fix could be to avoid reading <linux/socket.h> with #define _LINUX_SOCKET_H. Roman -- TO UNSUBSCRIBE FROM THIS MAILING LIST: e-mail the word "unsubscribe" to [EMAIL PROTECTED] . Trouble? e-mail to [EMAIL PROTECTED] .