[ovs-discuss] Error compiling on CentOS 5.3

Paolo Cravero pcravero at as2594.net
Wed Oct 7 08:19:54 UTC 2009


Hello from a newcomer.
I am trying to install 0.90.6 on a CentOS 5.3 (Final) with 2.6.18-164.el5xen 
kernel. All kernel sources and headers match kernel version:

kernel-xen-2.6.18-164.el5
kernel-headers-2.6.18-164.el5
kernel-xen-devel-2.6.18-164.el5

Compiler is gcc-4.1.2-44.el5.

At boot the kernel reports this string:

Linux version 2.6.18-128.el5xen (XXXXXXXorg) (gcc version 4.1.2 20080704 (Red 
Hat 4.1.2-44)) #1 SMP Wed Jan 21 11:12:42 EST 2009

So I think that kernel was compiled with my gcc version, as per documentation.


I run configure with:
./configure --with-l26=/lib/modules/`uname -r`/build

then make. Compilation stops with two errors:

make -C /lib/modules/2.6.18-164.el5xen/build 
M=/root/setup/openvswitch-0.90.6/datapath/linux-2.6 modules
make[4]: Entering directory `/usr/src/kernels/2.6.18-164.el5-xen-x86_64'
   CC [M]  /root/setup/openvswitch-0.90.6/datapath/linux-2.6/genetlink-brcompat.o
In file included from include/linux/skbuff.h:30,
                  from 
/root/setup/openvswitch-0.90.6/datapath/linux-2.6/compat-2.6/include/linux/skbuff.h:4,
                  from 
/root/setup/openvswitch-0.90.6/datapath/linux-2.6/compat-2.6/include/linux/netlink.h:4,
                  from 
/root/setup/openvswitch-0.90.6/datapath/linux-2.6/compat-2.6/include/net/genetlink.h:5,
                  from 
/root/setup/openvswitch-0.90.6/datapath/linux-2.6/genetlink-brcompat.c:1:
/root/setup/openvswitch-0.90.6/datapath/linux-2.6/compat-2.6/include/net/checksum.h:10: 
error: redefinition of "csum_unfold"
include/net/checksum.h:88: error: previous definition of "csum_unfold" was here
In file included from 
/root/setup/openvswitch-0.90.6/datapath/linux-2.6/compat-2.6/include/linux/netlink.h:4,
                  from 
/root/setup/openvswitch-0.90.6/datapath/linux-2.6/compat-2.6/include/net/genetlink.h:5,
                  from 
/root/setup/openvswitch-0.90.6/datapath/linux-2.6/genetlink-brcompat.c:1:
/root/setup/openvswitch-0.90.6/datapath/linux-2.6/compat-2.6/include/linux/skbuff.h:48: 
error: redefinition of â__skb_cowâ
include/linux/skbuff.h:1251: error: previous definition of "__skb_cow" was here
/root/setup/openvswitch-0.90.6/datapath/linux-2.6/compat-2.6/include/linux/skbuff.h:63: 
error: redefinition of "skb_cow_head"
include/linux/skbuff.h:1293: error: previous definition of "skb_cow_head" was here


Functions listed above are actually defined twice, both in kernel headers and 
in OVS files. If I comment them out from our sources, it compiles just fine 
but I don't know if it works then! (I'm not there yet)


I have full freedom on OS (*Linux) so I can change for a known-to-be-working 
Linux. Just tell me which. Otherwise what am I doing wrong?!

TIA,
Paolo





More information about the discuss mailing list