make clickdv_1WEofgDStwOKBO_PAnKcNa.uo
make -R CLICK_PACKAGE_MAKING=userlevel clickdv_1WEofgDStwOKBO_PAnKcNa.uo
make[1]: Entering directory '/tmp/clicktmp39238'
CXX clickdv_1WEofgDStwOKBO_PAnKcNa.u.cc
In file included from clickdv_1WEofgDStwOKBO_PAnKcNa.u.cc:419:0:
/usr/include/net/if_packet.h:29:8: error: redefinition of 'struct sockaddr_pkt'
struct sockaddr_pkt
^
In file included from clickdv_1WEofgDStwOKBO_PAnKcNa.u.cc:153:0:
/usr/include/linux/if_packet.h:6:8: error: previous definition of 'struct sockaddr_pkt'
struct sockaddr_pkt {
^
In file included from clickdv_1WEofgDStwOKBO_PAnKcNa.u.cc:422:0:
/usr/include/netpacket/packet.h:22:8: error: redefinition of 'struct sockaddr_ll'
struct sockaddr_ll
^
In file included from clickdv_1WEofgDStwOKBO_PAnKcNa.u.cc:153:0:
/usr/include/linux/if_packet.h:12:8: error: previous definition of 'struct sockaddr_ll'
struct sockaddr_ll {
^
In file included from clickdv_1WEofgDStwOKBO_PAnKcNa.u.cc:422:0:
/usr/include/netpacket/packet.h:67:8: error: redefinition of 'struct packet_mreq'
struct packet_mreq
^
In file included from clickdv_1WEofgDStwOKBO_PAnKcNa.u.cc:153:0:
/usr/include/linux/if_packet.h:289:8: error: previous definition of 'struct packet_mreq'
struct packet_mreq {
^
My environment:
Linux sm3n-1.local 4.4.0-66-generic #87-Ubuntu SMP Fri Mar 3 15:29:05 UTC 2017 x86_64 x86_64 x86_64 GNU/Linux
Hi. I'm trying to see if click-devirtualize provides any performance gains on modern hardware, but I'm having trouble getting it to work.
When I try to devirtualize a fairly basic config, I get conflicting struct definitions in system headers:
$ click-devirtualize -u test.click > dv /usr/local/bin/click-buildtool makepackage -C /tmp/clicktmp39238/ -t userlevel -w -fno-access-control clickdv_1WEofgDStwOKBO_PAnKcNa clickdv_1WEofgDStwOKBO_PAnKcNa.u.cc 1>&2
My environment: