[Click] Element Compiling Problem

Eddie Kohler kohler at cs.ucla.edu
Wed Aug 27 15:10:21 EDT 2008


Miguel,

Don't know if you ever resolved this.  But it looks as if your element, or 
Click itself, is including a userlevel header, /usr/include/netinet/in.h.  This 
is illegal when compiling kernel code; one needs to include   Your error 
messages are truncated so I can't tell whether it's in your package code or the 
core.

Eddie


Miguel Naranjo wrote:
> Hi all,
> 
> I am using click at user level with an ubuntu machine with the kernel 
> version 2.6.24-19-generic i686 GNU/Linux and the gcc version 4.2.3 
> (Ubuntu 4.2.3-2ubuntu7). I have created some packages with my own 
> elements and they all work well with no problem. However, I tried to 
> migrate my code to a different machine with kernel version 2.6.19.2 i586 
> GNU/Linux and  gcc version 4.3.1 (Debian 4.3.1-6) and I got the 
> following errors when I tried to install my packages.
> 
> Has anyone had this problem before? or know if I need to install the 
> older version of gcc in the debian machine?
> 
> Thanks and regards,
> 
> Miguel Naranjo.
> UCL
> 
> _*ERRORS*_
> In file included from /usr/include/limits.h:153,
>                  from 
> /usr/lib/gcc/i486-linux-gnu/4.3.1/include-fixed/limits.h:$
>                  from 
> /usr/lib/gcc/i486-linux-gnu/4.3.1/include-fixed/syslimits$
>                  from 
> /usr/lib/gcc/i486-linux-gnu/4.3.1/include-fixed/limits.h:$
>                  from /usr/include/bits/socket.h:32,
>                  from /usr/include/sys/socket.h:36,
>                  from /usr/include/netinet/in.h:25,
>                  from 
> /usr/src/click-git-20080715/elements/bampackage_branch_mi$
>                  from 
> /usr/src/click-git-20080715/elements/bampackage_branch_mi$
> /usr/include/bits/xopen_lim.h:95:6: error: missing binary operator 
> before token$
> /usr/include/bits/xopen_lim.h:98:7: error: missing binary operator 
> before token$
> /usr/include/bits/xopen_lim.h:122:6: error: missing binary operator 
> before toke$
> In file included from 
> /usr/src/click-git-20080715/elements/bampackage_branch_mi$
>                  from 
> /usr/src/click-git-20080715/elements/bampackage_branch_mi$
> /usr/include/time.h:105: error: conflicting declaration 'typedef void* 
> timer_t'
> include/linux/types.h:31: error: 'timer_t' has a previous declaration as 
> 'typed$
> /usr/include/time.h:121: error: redefinition of 'struct timespec'
> include/linux/time.h:12: error: previous definition of 'struct timespec'
> /usr/include/time.h:162: error: redefinition of 'struct itimerspec'
> include/linux/time.h:195: error: previous definition of 'struct itimerspec'
> /usr/include/time.h:194: error: declaration of C function '__time_t 
> mktime(tm*)$
> include/linux/time.h:69: error: previous declaration 'long unsigned int 
> mktime($
> In file included from 
> /usr/src/click-git-20080715/elements/bampackage_branch_mi$
>                  from 
> /usr/src/click-git-20080715/elements/bampackage_branch_mi$
> /usr/include/sys/types.h:62: error: conflicting declaration 'typedef 
> __dev_t de$
> include/linux/types.h:22: error: 'dev_t' has a previous declaration as 
> 'typedef$
> /usr/include/sys/types.h:72: error: conflicting declaration 'typedef 
> __mode_t m$
> include/linux/types.h:24: error: 'mode_t' has a previous declaration as 
> 'typede$
> /usr/include/sys/types.h:77: error: conflicting declaration 'typedef 
> __nlink_t $
> include/linux/types.h:25: error: 'nlink_t' has a previous declaration as 
> 'typed$
> In file included from /usr/include/sys/types.h:220,
>                  from 
> /usr/src/click-git-20080715/elements/bampackage_branch_mi$
>                  from 
> /usr/src/click-git-20080715/elements/bampackage_branch_mi$
> /usr/include/sys/select.h:38: error: conflicting declaration 'typedef 
> struct __$
> include/asm/signal.h:26: error: 'sigset_t' has a previous declaration as 
> 'typed$
> In file included from /usr/include/sys/select.h:46,
>                  from /usr/include/sys/types.h:220,
>                  from 
> /usr/src/click-git-20080715/elements/bampackage_branch_mi$
>                  from 
> /usr/src/click-git-20080715/elements/bampackage_branch_mi$
> /usr/include/bits/time.h:69: error: redefinition of 'struct timeval'
> include/linux/time.h:18: error: previous definition of 'struct timeval'
> In file included from /usr/include/sys/types.h:220,
>                  from 
> /usr/src/click-git-20080715/elements/bampackage_branch_mi$
>                  from 
> /usr/src/click-git-20080715/elements/bampackage_branch_mi$
> /usr/include/sys/select.h:78: error: conflicting declaration 'typedef 
> struct fd$
> include/linux/types.h:21: error: 'fd_set' has a previous declaration as 
> 'typede$
> In file included from 
> /usr/src/click-git-20080715/elements/bampackage_branch_mi$
>                  from 
> /usr/src/click-git-20080715/elements/bampackage_branch_mi$
> /usr/include/sys/types.h:235: error: conflicting declaration 'typedef 
> __blkcnt_$
> include/linux/types.h:148: error: 'blkcnt_t' has a previous declaration 
> as 'typ$
> In file included from /usr/include/sys/ipc.h:30,
>                  from 
> /usr/src/click-git-20080715/elements/bampackage_branch_mi$
>                  from 
> /usr/src/click-git-20080715/elements/bampackage_branch_mi$
> /usr/include/bits/ipc.h:43: error: redefinition of 'struct ipc_perm'
> include/linux/ipc.h:10: error: previous definition of 'struct ipc_perm'
> In file included from /usr/include/sys/stat.h:107,
>                  from 
> /usr/src/click-git-20080715/elements/bampackage_branch_mi$
>                  from 
> /usr/src/click-git-20080715/elements/bampackage_branch_mi$
> /usr/include/bits/stat.h:43: error: redefinition of 'struct stat'
> include/asm/stat.h:18: error: previous definition of 'struct stat'
> /usr/include/bits/stat.h:116: error: redefinition of 'struct stat64'
> include/asm/stat.h:42: error: previous definition of 'struct stat64'
> In file included from /usr/include/bits/fcntl.h:27,
>                  from /usr/include/fcntl.h:34,
>                  from 
> /usr/src/click-git-20080715/elements/bampackage_branch_mi$
>                  from 
> /usr/src/click-git-20080715/elements/bampackage_branch_mi$
> /usr/include/bits/uio.h:44: error: redefinition of 'struct iovec'
> include/linux/uio.h:21: error: previous definition of 'struct iovec'
> In file included from /usr/include/fcntl.h:34,
>                  from 
> /usr/src/click-git-20080715/elements/bampackage_branch_mi$
>                  from 
> /usr/src/click-git-20080715/elements/bampackage_branch_mi$
> /usr/include/bits/fcntl.h:158: error: redefinition of 'struct flock'
> include/asm-generic/fcntl.h:114: error: previous definition of 'struct 
> flock'
> /usr/include/bits/fcntl.h:173: error: redefinition of 'struct flock64'
> include/asm-generic/fcntl.h:137: error: previous definition of 'struct 
> flock64'
> In file included from /usr/include/netinet/in.h:24,
>                  from 
> /usr/src/click-git-20080715/elements/bampackage_branch_mi$
>                  from 
> /usr/src/click-git-20080715/elements/bampackage_branch_mi$
> /usr/include/stdint.h:129: error: conflicting declaration 'typedef 
> unsigned int$
> /usr/src/click-git-20080715/include/click/config-linuxmodule.h:98: 
> error: 'uint$
> In file included from /usr/include/sys/socket.h:36,
>                  from /usr/include/netinet/in.h:25,
>                  from 
> /usr/src/click-git-20080715/elements/bampackage_branch_mi$
>                  from 
> /usr/src/click-git-20080715/elements/bampackage_branch_mi$
> /usr/include/bits/socket.h:44: error: conflicting declaration 'SOCK_STREAM'
> include/linux/net.h:84: error: 'SOCK_STREAM' has a previous declaration 
> as 'soc$
> /usr/include/bits/socket.h:47: error: conflicting declaration 'SOCK_DGRAM'
> include/linux/net.h:85: error: 'SOCK_DGRAM' has a previous declaration 
> as 'sock$
> /usr/include/bits/socket.h:50: error: conflicting declaration 'SOCK_RAW'
> include/linux/net.h:86: error: 'SOCK_RAW' has a previous declaration as 
> 'sock_t$
> /usr/include/bits/socket.h:52: error: conflicting declaration 'SOCK_RDM'
> include/linux/net.h:87: error: 'SOCK_RDM' has a previous declaration as 
> 'sock_t$
> /usr/include/bits/socket.h:54: error: conflicting declaration 
> 'SOCK_SEQPACKET'
> include/linux/net.h:88: error: 'SOCK_SEQPACKET' has a previous 
> declaration as '$
> /usr/include/bits/socket.h:57: error: conflicting declaration 'SOCK_PACKET'
> include/linux/net.h:90: error: 'SOCK_PACKET' has a previous declaration 
> as 'soc$
> In file included from /usr/include/sys/socket.h:36,
>                  from /usr/include/netinet/in.h:25,
>                  from 
> /usr/src/click-git-20080715/elements/bampackage_branch_mi$
>                  from 
> /usr/src/click-git-20080715/elements/bampackage_branch_mi$
> /usr/include/bits/socket.h:150: error: redefinition of 'struct sockaddr'
> include/linux/socket.h:39: error: previous definition of 'struct sockaddr'
> /usr/include/bits/socket.h:167: error: redefinition of 'struct 
> __kernel_sockadd$
> include/linux/socket.h:11: error: previous definition of 'struct 
> __kernel_socka$
> /usr/include/bits/socket.h:178: error: expected identifier before 
> numeric const$
> /usr/include/bits/socket.h:178: error: expected `}' before numeric constant
> /usr/include/bits/socket.h:178: error: expected unqualified-id before 
> numeric c$
> /usr/include/bits/socket.h:225: error: redefinition of 'struct msghdr'
> include/linux/socket.h:57: error: previous definition of 'struct msghdr'
> /usr/include/bits/socket.h:243: error: redefinition of 'struct cmsghdr'
> include/linux/socket.h:73: error: previous definition of 'struct cmsghdr'
> /usr/include/bits/socket.h:302: error: expected identifier before 
> numeric const$
> /usr/include/bits/socket.h:302: error: expected `}' before numeric constant
> /usr/include/bits/socket.h:302: error: expected unqualified-id before 
> numeric c$
> /usr/include/bits/socket.h:308: error: expected declaration before '}' token
> make[3]: *** 
> [/usr/src/click-git-20080715/elements/bampackage_branch_miguel/BAM$
> make[2]: *** 
> [_module_/usr/src/click-git-20080715/elements/bampackage_branch_mi$
> make[1]: *** [bamMiguel.ko] Error 2
> make: *** [bamMiguel.ko] Error 2
> 
> 
> _______________________________________________
> click mailing list
> click at amsterdam.lcs.mit.edu
> https://amsterdam.lcs.mit.edu/mailman/listinfo/click


More information about the click mailing list