From: Bo Ørsted Andresen <[EMAIL PROTECTED]>
Subject: Re: [gentoo-user] What is that (compile errors in system headers...)
Date: Mon, 2 Oct 2006 19:58:57 +0200

> On Monday 02 October 2006 19:48, Meino Christian Cramer wrote:
> >  I tried to compile a little program (nothing special) and got this
> >  errors:
> >
> >      In file included from /usr/include/stdlib.h:438,
> >                       from ethlinkstat.c:10:
> >      /usr/include/sys/types.h:62: error: conflicting types for 'dev_t'
> >      /usr/include/linux/types.h:27: error: previous declaration of 'dev_t'
> [SNIP]
> >  What should I do here ?
> 
> Bug #144205 [1] should be of interest here. Basically you need to include 
> <sys/types.h> before <linux/types.h>.
> 
> [1] https://bugs.gentoo.org/show_bug.cgi?id=144205
> 
> -- 
> Bo Andresen

Hi Bo,
 
 thanks for your fast reply, but unfortunately it does not completely
 solve it. Now I get this:

    In file included from /usr/include/stdlib.h:438,
                     from ethlinkstat.c:10:
    /usr/include/sys/types.h:62: error: conflicting types for 'dev_t'
    /usr/include/linux/types.h:27: error: previous declaration of 'dev_t' was 
here
    /usr/include/sys/types.h:72: error: conflicting types for 'mode_t'
    /usr/include/linux/types.h:33: error: previous declaration of 'mode_t' was 
here
    /usr/include/sys/types.h:77: error: conflicting types for 'nlink_t'
    /usr/include/linux/types.h:36: error: previous declaration of 'nlink_t' was 
here
    In file included from /usr/include/sys/types.h:133,
                     from /usr/include/stdlib.h:438,
                     from ethlinkstat.c:10:
    /usr/include/time.h:105: error: conflicting types for 'timer_t'
    /usr/include/linux/types.h:45: error: previous declaration of 'timer_t' was 
here
    In file included from /usr/include/sys/types.h:220,
                     from /usr/include/stdlib.h:438,
                     from ethlinkstat.c:10:
    /usr/include/sys/select.h:78: error: conflicting types for 'fd_set'
    /usr/include/linux/types.h:24: error: previous declaration of 'fd_set' was 
here
    In file included from /usr/include/stdlib.h:438,
                     from ethlinkstat.c:10:
    /usr/include/sys/types.h:235: error: conflicting types for 'blkcnt_t'
    /usr/include/linux/types.h:158: error: previous declaration of 'blkcnt_t' 
was here
    In file included from /usr/include/sys/uio.h:29,
                     from /usr/include/sys/socket.h:27,
                     from ethlinkstat.c:15:
    /usr/include/bits/uio.h:43: error: redefinition of 'struct iovec'
    In file included from /usr/include/sys/socket.h:35,
                     from ethlinkstat.c:15:
    /usr/include/bits/socket.h:146: error: redefinition of 'struct sockaddr'
    /usr/include/bits/socket.h:163: error: redefinition of 'struct 
__kernel_sockaddr_storage'
    /usr/include/bits/socket.h:173: error: expected identifier before numeric 
constant
    /usr/include/bits/socket.h:216: error: redefinition of 'struct msghdr'
    /usr/include/bits/socket.h:231: error: redefinition of 'struct cmsghdr'
    /usr/include/bits/socket.h:258: error: conflicting types for '__cmsg_nxthdr'
    /usr/include/linux/socket.h:136: error: previous definition of 
'__cmsg_nxthdr' was here
    /usr/include/bits/socket.h:286: error: expected identifier before numeric 
constant
    /usr/include/bits/socket.h:297: error: redefinition of 'struct ucred'
    /usr/include/bits/socket.h:309: error: redefinition of 'struct linger'


 Something seems to be rotten in my system...
 May be the linux kernel header files under /usr/linux and those of
 linux-2.6.18 are incompatible ???

 My includes are now:
    
    #include <linux/if.h>
    #include <linux/ethtool.h>
    #include <stdio.h>
    #include <stdlib.h>
    #include <string.h>
    #include <errno.h>
    #include <sys/types.h>
    #include <linux/types.h>
    #include <sys/socket.h>

 The program (a eth-link tester) is simply compiled with 

         make <program>

 and I compile with gcc-4.1.1 (yse I did all the emerge system/world
 thingies and beside of this everything works fine until
 now). Compiling the kernel is as boring as ever ;O)


 Keep hacking!
 mcc


 

-- 
gentoo-user@gentoo.org mailing list

Reply via email to