411 REFERENCE · Wikibooks
QEMU/MinGW
Reference material by Wikibooks contributors. This retains its source identity and is not 411 news reporting.
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.