[ovs-dev] WINDOWS userspace build broken

Alin Serdean aserdean at cloudbasesolutions.com
Tue Aug 12 17:39:21 UTC 2014


Hi Ben,

I noticed today the windows build was broken.

Error is:
        source='lib/bundle.c' object='lib/bundle.lo' libtool=yes \
        DEPDIR=.deps depmode=none /bin/sh ./build-aux/depcomp \
        /bin/sh ./libtool  --tag=CC   --mode=compile ./build-aux/cccl -DHAVE_CON
FIG_H -I.   -I ./include/windows -I ./datapath-windows/include -IC:/pthread/incl
ude -I ./include -I ./include -I ./lib -I ./lib    -Wstrict-prototypes -Wall -We
xtra -Wno-sign-compare -Wpointer-arith -Wformat-security -Wno-format-zero-length
-Wswitch-enum -Wunused-parameter -Wstrict-aliasing -Wbad-function-cast -Wcast-a
lign -Wstrict-prototypes -Wold-style-definition -Wmissing-prototypes -Wmissing-f
ield-initializers -Wthread-safety  -g -c -o lib/bundle.lo lib/bundle.c
libtool: compile:  ./build-aux/cccl -DHAVE_CONFIG_H -I. -I ./include/windows -I
./datapath-windows/include -IC:/pthread/include -I ./include -I ./include -I ./l
ib -I ./lib -Wstrict-prototypes -Wall -Wextra -Wno-sign-compare -Wpointer-arith
-Wformat-security -Wno-format-zero-length -Wswitch-enum -Wunused-parameter -Wstr
ict-aliasing -Wbad-function-cast -Wcast-align -Wstrict-prototypes -Wold-style-de
finition -Wmissing-prototypes -Wmissing-field-initializers -Wthread-safety -g -c
lib/bundle.c
cl -nologo -EHsc -DHAVE_CONFIG_H -I. -I ./include/windows -I ./datapath-windows/
include -IC:/pthread/include -I ./include -I ./include -I ./lib -I ./lib -Zi -c
lib/bundle.c
bundle.c
c:\temp\12_08_2014\ovs\lib\hash.h(142) : warning C4028: formal parameter 1 diffe
rent from declaration
c:\temp\12_08_2014\ovs\lib\hash.h(148) : warning C4028: formal parameter 1 diffe
rent from declaration
c:\temp\12_08_2014\ovs\lib\hash.h(148) : warning C4028: formal parameter 2 diffe
rent from declaration
c:\temp\12_08_2014\ovs\lib\ofp-actions.h(465) : error C2229: struct 'ofpact_nest
' has an illegal zero-sized array
make[2]: *** [lib/bundle.lo] Error 1
make[2]: Leaving directory `/c/temp/12_08_2014/ovs'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/c/temp/12_08_2014/ovs'
make: *** [all] Error 2

Expanding the problem a bit:
struct ofpact_nest {
    struct ofpact ofpact;
    uint8_t pad[PAD_SIZE(sizeof(struct ofpact), OFPACT_ALIGNTO)];
    struct ofpact actions[];
};
Means PAD_SIZE(sizeof(struct ofpact), OFPACT_ALIGNTO) turns out
to be 0 (http://msdn.microsoft.com/en-us/library/0scy7z2d.aspx ).

Commit  since build was broken:
c2d936a ofp-actions: Centralize all OpenFlow action code for maintainability.

Thanks,
Alin.



More information about the dev mailing list