QEMU/MinGW


 * There are pre-compiled binaries for Windows. It may save some time to use them. However as of this writing, they are out of date with respect to the source repository, by a full version number.
 * Download the source code at the main website's download page.
 * Run ./configure from the directory where the source archive was extracted. This should automatically detect that your system is MinGW.
 * Dependencies - There are several libs required that may not be installed as of yet. If configure ends complaining that one of these is missing then follow those steps.
 * zlib
 * Download the zlib source code into a different directory and
 * Run ./configure in that directory
 * Run make -f win32/Makefile.gcc
 * Run export LIBRARY_PATH=/usr/lib
 * Run export INCLUDE_PATH=/usr/include
 * Run export BINARY_PATH=/usr/bin
 * Run make install -f win32/Makefile.gcc
 * gettext
 * Purportedly required for glib.
 * Download here.
 * Extract and run ./configure (this will take a while as it repeats many tests in each build subdirectory)
 * Run make.
 * If it fails with a syntax error at line 103 of test-lock.c, then change that function to return pthread_t instead of void* and remove the cast on the error line. Then run make again.
 * Once the build succeeds, run make install. It will install to /usr/local. Documentation and examples will be created for each existing language.
 * libiconv
 * Purportedly required for glib.
 * Download at the project's homepage.
 * Run ./configure in the extraction directory. The same configuration script that was run so many times for configuration of gettext will be invoked many times now.
 * Run make.
 * Run make install.
 * glib
 * Required for pkg-config.
 * Here is a page about compiling glib on MinGW. It mentions that gettext and libiconv are required.
 * The source can be obtained here.
 * Run ./configure in the extraction directory.
 * If it complains it can't find zlib, then follow the instructions at the French wiki and export CFLAGS and LDFLAGS. The values recommended may be wrong, these were used:
 * export LDFLAGS="-L/usr/local/lib -L/usr/lib"
 * export CFLAGS="-I/usr/include -I/usr/local/include"
 * Then you'll probably find that pkg-config is required to build glib.
 * There's a suggestion to use Cygwin to bootstrap the process by using its pkg-config and dll for MinGW. This probably makes sense to the people responsible for glib.
 * pkg-config
 * You may or may not have gtk installed, and the FAQ at MinGW says at the moment that gtk is required to install pkg-config. This may or may not be installed along with GIMP, and MinGW may need to be setup to make it available.
 * That FAQ has a bad URL at present for the pkg-config download, but at the moment it was available at freedesktop.org.
 * Run ./configure from the directory where pkg-config is extracted.