Sorry, at this point, I've moved to compiling from Ubuntu as you suggested earlier.
On Sun, Sep 20, 2015 at 9:19 PM, Mike Ladouceur <mike.ladouc...@live.com> wrote: > Okay, i followed the steps from the reply to my email I noticed on the > website, but never made its way to my inbox. Now, I'm stuck with the > following errors: > > /home/mike/qemu/include/glib-compat.h: At top level: > /home/mike/qemu/include/glib-compat.h:145:21: error: conflicting types for > ‘g_cond_signal’ > static inline void (g_cond_signal)(CompatGCond *cond) > ^ > In file included from > /usr/x86_64-w64-mingw32/include/glib-2.0/glib/gasyncqueue.h:34:0, > from /usr/x86_64-w64-mingw32/include/glib-2.0/glib.h:34, > from qga/commands.c:13: > /usr/x86_64-w64-mingw32/include/glib-2.0/glib/gthread.h:201:17: note: > previous declaration of ‘g_cond_signal’ was here > void g_cond_signal (GCond *cond); > ^ > In file included from /home/mike/qemu/include/qemu-common.h:25:0, > from ./qga/guest-agent-core.h:14, > from qga/commands.c:14: > /home/mike/qemu/include/glib-compat.h: In function ‘g_cond_signal’: > /home/mike/qemu/include/glib-compat.h:148:5: warning: passing argument 1 > of ‘g_cond_signal’ from incompatible pointer type [enabled by default] > g_cond_signal((GCond *) cond->once.retval); > ^ > /home/mike/qemu/include/glib-compat.h:145:21: note: expected ‘struct > CompatGCond *’ but argument is of type ‘struct GCond *’ > static inline void (g_cond_signal)(CompatGCond *cond) > ^ > /home/mike/qemu/include/glib-compat.h: At top level: > /home/mike/qemu/include/glib-compat.h:154:24: error: static declaration of > ‘g_thread_new’ follows non-static declaration > static inline GThread *g_thread_new(const char *name, > ^ > In file included from > /usr/x86_64-w64-mingw32/include/glib-2.0/glib/gasyncqueue.h:34:0, > from /usr/x86_64-w64-mingw32/include/glib-2.0/glib.h:34, > from qga/commands.c:13: > /usr/x86_64-w64-mingw32/include/glib-2.0/glib/gthread.h:145:17: note: > previous declaration of ‘g_thread_new’ was here > GThread * g_thread_new (const gchar *name, > ^ > make: *** [qga/commands.o] Error 1 > > > On Fri, Sep 18, 2015 at 10:49 PM, Mike Ladouceur <mike.ladouc...@live.com> > wrote: > >> I tried from Ubuntu in Virtualbox and this is the error I now get and it >> appears to be similar to the error from Cygwin. Configure seems to run >> fine. Make fails. I'm officially lost. >> >> ./configure --cross-prefix=x86_64-w64-mingw32 >> (...) >> CC qga/commands-win32.o >> qga/commands-win32.c: In function ‘qmp_guest_set_user_password’: >> qga/commands-win32.c:1254:5: warning: passing argument 2 of >> ‘g_base64_decode’ from incompatible pointer type [enabled by default] >> rawpasswddata = (char *)g_base64_decode(password, &rawpasswdlen); >> ^ >> In file included from /usr/include/glib-2.0/glib.h:35:0, >> from qga/commands-win32.c:14: >> /usr/include/glib-2.0/glib/gbase64.h:52:9: note: expected ‘gsize *’ but >> argument is of type ‘size_t *’ >> guchar *g_base64_decode (const gchar *text, >> ^ >> CC qga/channel-win32.o >> qga/channel-win32.c: In function ‘ga_channel_create_watch’: >> qga/channel-win32.c:199:24: warning: cast from pointer to integer of >> different size [-Wpointer-to-int-cast] >> watch->pollfd.fd = (gintptr) c->rstate.ov.hEvent; >> ^ >> qga/channel-win32.c: At top level: >> qga/channel-win32.c:205:11: error: conflicting types for ‘ga_channel_read’ >> GIOStatus ga_channel_read(GAChannel *c, char *buf, size_t size, gsize >> *count) >> ^ >> In file included from qga/channel-win32.c:9:0: >> ./qga/channel.h:30:11: note: previous declaration of ‘ga_channel_read’ >> was here >> GIOStatus ga_channel_read(GAChannel *c, gchar *buf, gsize size, gsize >> *count); >> ^ >> qga/channel-win32.c:269:11: error: conflicting types for >> ‘ga_channel_write_all’ >> GIOStatus ga_channel_write_all(GAChannel *c, const char *buf, size_t >> size) >> ^ >> In file included from qga/channel-win32.c:9:0: >> ./qga/channel.h:31:11: note: previous declaration of >> ‘ga_channel_write_all’ was here >> GIOStatus ga_channel_write_all(GAChannel *c, const gchar *buf, gsize >> size); >> ^ >> qga/channel-win32.c: In function ‘ga_channel_open’: >> qga/channel-win32.c:291:19: error: ‘MAXPATHLEN’ undeclared (first use in >> this function) >> gchar newpath[MAXPATHLEN] = {0}; >> ^ >> qga/channel-win32.c:291:19: note: each undeclared identifier is reported >> only once for each function it appears in >> qga/channel-win32.c:291:11: warning: unused variable ‘newpath’ >> [-Wunused-variable] >> gchar newpath[MAXPATHLEN] = {0}; >> ^ >> make: *** [qga/channel-win32.o] Error 1 >> >> >> On Wed, Sep 16, 2015 at 1:51 PM, Mike Ladouceur <mike.ladouc...@live.com> >> wrote: >> >>> Thanks for the reply. I will try to cross-compile via cygwin seeing as >>> I've had no luck installing and configuring mingw64. >>> >>> On Tue, Sep 15, 2015 at 4:44 PM, Eric Blake <ebl...@redhat.com> wrote: >>> >>>> On 09/15/2015 02:10 PM, Stefan Weil wrote: >>>> >> >>>> >> CC qga/commands-win32.o >>>> >>> qga/commands-win32.c: In function ‘qmp_guest_set_user_password’: >>>> >>> qga/commands-win32.c:1254:55: warning: passing argument 2 of >>>> >>> ‘g_base64_decode’ from incompatible pointer type >>>> >>> rawpasswddata = (char *)g_base64_decode(password, >>>> &rawpasswdlen); >>>> >>> ^ >>>> >>>> Ugh. Compiling for cygwin should favor POSIX interfaces, not >>>> commands-win32. The build is failing because it isn't even correctly >>>> deciding which files it should be compiling. >>>> >>>> >>>> > compiling with cygwin is unsupported. I suggest using MinGW-w64 >>>> > (which also works for cross compilations under Linux). >>>> >>>> Remember, cygwin is itself an emulation layer - you are emulating POSIX >>>> interfaces on top of Windows; which, while making the environment easier >>>> to port to, also makes the environment slower. qemu targets mingw and >>>> not cygwin because qemu is an emulator and already slow enough, without >>>> needing another layer of emulation thrown in the mix. >>>> >>>> That said, if you want to port qemu to cygwin and supply patches, I'm >>>> more than willing to help review them. It's just that right now, it's >>>> not my personal itch to write such patches, and that the qemu community >>>> currently favors mingw rather than cygwin. >>>> >>>> Also, cygwin comes with cross-compilers, so you can still use your >>>> cygwin setup to compile qemu for mingw (although doing the cross-compile >>>> on a true Linux box will be faster). >>>> >>>> -- >>>> Eric Blake eblake redhat com +1-919-301-3266 >>>> Libvirt virtualization library http://libvirt.org >>>> >>>> >>> >> >