[Spice-devel] How to build virt-viewer for windows from a fedora mingw64 cross-compiler environment

Marc-André Lureau mlureau at redhat.com
Tue Oct 16 05:28:11 PDT 2012


Hi,

----- Mensaje original -----
> 
> Dear all,
> 
> 
> I have made one working mingw64 cross-compiler environment on my
> fedora 17.
> After download virt-viewer-0.5.4.tar.gz and extract, i run
> 
> 
> mingw64-configure
> mingw64-make
> mingw64-make install
> 
> 
> in the src directory. And then i made the windows installer with
> 
> 
> makensis data/virt-viewer.nsis
> 

You are on the right track!

> Everything seemed ok except that mingw64-make reported this warning:
> 
> 
> 
> /usr/x86_64-w64-mingw32/sys-root/mingw/include/glib-2.0/glib/gutils.h:123:1:
> warning: inlining failed in call to '_g_win32_get_system_data_dirs':
> call is unlikely and code size would grow [-Winline]

We can safely ignore that warning.
 
> and makensis reported this error:
> 
> 
> 
> File:
> "${DESTDIR}/usr/x86_64-w64-mingw32/sys-root/mingw/bin/windows-cmdline-wrapper.exe"
> -> no files found.

The nsis script is made so that the installation to root isn't necessary. For that you need to change the DESTDIR:

make install DESTDIR=/tmp/some-tmp-dir
makensis data/virt-viewer.nsis -DDESTDIR=/tmp/some-tmp-dir


I have some pending patches to add a Makefile target simplifying this process.

> The problem is here:
> When i installed the virt-viewer installer on one windows pc and ran
> the remote viewer, it reported errors as a lack
> of libexpat-1.dll and many other dlls. For this i thought may be the
> virt-viewer.nsis file was wrong, so i added all the dll files from
> /usr/x86_64-w64-mingw32/sys-root/mingw/bin. And yeah, this time the

Right, I also have a pending patch updating the needed files, I´ll resubmit. Thanks for the reminder

> remote-viewer.exe fired up, but it refused to connect to URLs like
> "spice://x.x.x.x:xx" , it reported "Unknown graphic type for the
> guest spice://x.x.x.x:xx".

That's most likely because virt-viewer got compiled without spice support.
Make sure you have mingw-spice-gtk installed, and run mingw64-configure --with-spice-gtk

> I don't know whether i did something wrong, and can not find any
> howtos or instructions.
> Could anyone give me a hand? Thanks. And if you have succeeded to
> build one windows client for spice with usb support, I will be glad
> that you can send it to me:) i need it now.

I am not sure this one has been made public yet. The problem is that usb redirection support on windows requires building with MSVC some USB components atm, and can't be made available easily on upstream & Fedora. Help would be appreciated to fully cross-compile the USB support!

regards


More information about the Spice-devel mailing list