- cmake
- git
- wget
- - unzip
- p7zip
- pkg-config (>= 0.22)
- sdcc (needed for building the fx2lafw firmware)
$ git clone https://github.com/mxe/mxe.git mxe-git
$ cd mxe-git
-For now we need to build gcc and winpthreads in two steps. First:
+Apply some fixes that are currently required for a proper build:
- $ make MXE_TARGETS=i686-w64-mingw32.static gcc winpthreads
+ $ patch -p1 < mxe_fixes.patch
-In src/gcc.mk change "--enable-threads=win32" to "--enable-threads=posix".
+Build all required packages:
-Then build gcc again:
-
- $ make MXE_TARGETS=i686-w64-mingw32.static gcc
-
-We now have a system that supports C++11 std::thread. Now build the rest:
-
- $ make MXE_TARGETS=i686-w64-mingw32.static glib libzip libusb1 libftdi \
- qtbase boost check
+ $ make MXE_TARGETS=i686-w64-mingw32.static.posix \
+ MXE_PLUGIN_DIRS=plugins/examples/qt5-freeze \
+ gcc glib libzip libusb1 libftdi1 glibmm qtbase qtimageformats qtsvg \
+ boost check gendef qtbase_CONFIGURE_OPTS='-no-sql-mysql'
This will take a while.
See http://mxe.cc for details on MXE.
+Note: We're "freezing" the Qt5 version to Qt 5.7.x, since that's the last
+version that supports Windows XP (which we currently still want to support).
+
Building
--------