qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Qemu-devel] 64-bit build of qemu-system-arm with mingw-w64 not func


From: Stefan Weil
Subject: Re: [Qemu-devel] 64-bit build of qemu-system-arm with mingw-w64 not functional
Date: Thu, 09 Apr 2015 19:41:02 +0200
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:31.0) Gecko/20100101 Icedove/31.6.0

Am 09.04.2015 um 16:07 schrieb Liviu Ionescu
On 09 Apr 2015, at 10:40, Liviu Ionescu <address@hidden> wrote:
I guess you either tweaked the pkg-config to find them, or you set some 
environment variables before configure.
...
can you share these details too? I want to reproduce "exactly" your environment.


Here is the template for all cross pkg-configs:
http://repo.or.cz/w/qemu/ar7.git/blob_plain/HEAD:/scripts/cross-pkg-config

See also http://patchwork.ozlabs.org/patch/114242/

Maybe I should resend that patch.

the reason I ask for these details is that even after adding a 
x86_64-w64-mingw32-pkg-config, the configure still differs from yours.

among the differences I spotted were:

- no -mthreads -D_POSIX=1
- no SDL support


I think -mthreads is essential (needed for thread local storage),
and -D_POSIX=1 is also needed for 64 bit builds.

Maybe you can try my QEMU fork from http://repo.or.cz/w/qemu/ar7.git
and see whether it works for you. My binaries are based on that code.
If it works, we have to look which patches are missing in the official
QEMU version.

SDL comes from a locally cross built libSDL. I never had time to put
it into a Debian package. Maybe it is better for your tests to build
without SDL support, because the SDL init code redirects stdin and
stdout to files which complicates things even when you run QEMU
with SDL disabled.
.


another problems are related to the setup:
- "make installer" did not pack any DLL inside the setup

It has a built-in magic: all DLL files from $(SRC_PATH)/dll/w64 are
taken for the 64 bit build (w32 for 32 bit build).

Get a list of all needed DLL files either by try and error or by using
tools and copy them (or make symbolic links) to that directory.
Here are the files for 32 bit for my configuration:

dll/w32/freetype6.dll
dll/w32/pdcurses.dll
dll/w32/libgio-2.0-0.dll
dll/w32/libfontconfig-1.dll
dll/w32/libpangoft2-1.0-0.dll
dll/w32/libpangocairo-1.0-0.dll
dll/w32/libgtk-win32-2.0-0.dll
dll/w32/libatk-1.0-0.dll
dll/w32/libpangowin32-1.0-0.dll
dll/w32/intl.dll
dll/w32/libpango-1.0-0.dll
dll/w32/libgcc_s_sjlj-1.dll
dll/w32/libgdk_pixbuf-2.0-0.dll
dll/w32/libglib-2.0-0.dll
dll/w32/libssp-0.dll
dll/w32/zlib1.dll
dll/w32/libgmodule-2.0-0.dll
dll/w32/libcairo-2.dll
dll/w32/SDL.dll
dll/w32/libgthread-2.0-0.dll
dll/w32/libexpat-1.dll
dll/w32/libpng14-14.dll
dll/w32/libgobject-2.0-0.dll
dll/w32/libgdk-win32-2.0-0.dll
dll/w32/libstdc++-6.dll

- the setup insists on installing in C:\Program Files (x86), although it is not 
a 32-bit application

my feeling is that you still have additional libraries that you have 
difficulties to keep track, you possibly use environment variables, and the 
procedure to generate the setup is not the one in the Makefile.

There is an nsis macro W64 which switches the program directory (see qemu.nsi).
Are you using the packages from Debian (here those for Wheezy):

ii nsis 2.46-7 amd64 Nullsoft Scriptable Install System (modified for Debian) ii nsis-common 2.46-7 all Nullsoft Scriptable Install System stubs and plugins


Regards
Stefan




reply via email to

[Prev in Thread] Current Thread [Next in Thread]