On 09/27/2013 01:35 AM, Michal Privoznik wrote:
make[3]: Entering directory
`/home/zippy/work/tmp/a/libvirt-1.1.2/gnulib/lib'
CC allocator.lo
In file included from allocator.c:4:0:
./stdlib.h:76:8: error: redefinition of 'struct random_data'
struct random_data
^
In file included from ./stdlib.h:36:0,
from allocator.c:4:
/usr/include/stdlib.h:349:8: note: originally defined here
struct random_data
^
In file included from /usr/include/sys/types.h:220:0,
from ./sys/types.h:27,
from /usr/include/stdlib.h:320,
from ./stdlib.h:36,
from allocator.c:4:
There are a few more but of the same nature.
The problem is, gnulib's stdlib.h defines the struct random_data. And so
does the system's /usr/include/stdlib.h. Unfortunately, I'm not that
familiar with gnulib to fix the issue myself. Eric, any thoughts on
this? Is it possible that your recent gnulib update has fixed this?
That implies a bug in gnulib; I'll see if I can get it fixed today; we'd
need to update the gnulib submodule of libvirt to pull in the fix, so
hopefully I can get it done in time before the rc2 build is cut. Can
you show me the config.log output related to detecting whether 'struct
random_data' exists? Is this a case of circular header inclusion on
FreeBSD (that is, does <sys/types.h> try to recursively include
<stdlib.h> to pick up the struct?)
--
Eric Blake eblake redhat com +1-919-301-3266
Libvirt virtualization library
http://libvirt.org