-------------------------------------------------------------------------------
This is a small script for cross-compiling sigrok and its dependencies
-for Windows/MinGW systems.
+for MinGW-w64/Windows systems.
Status
- bash
- gcc
- make
+ - cmake
- git
+ - wget
+ - p7zip
- pkg-config (>= 0.22)
- - unzip
- - MXE
+ - sdcc (needed for building the fx2lafw firmware)
+ - nsis
+ - MXE (*-w64-*.posix targets; *-pc-* and non-posix targets are not supported)
MXE setup
---------
-First, setup the MXE cross-compile environment for MinGW/Windows:
+First, get the MXE cross-compile environment for MinGW-w64/Windows:
$ cd $HOME
$ git clone https://github.com/mxe/mxe.git mxe-git
$ cd mxe-git
- $ make gcc glib libzip libusb1 libftdi gtk2 qt boost nsis
+
+Apply some fixes that are currently required for a proper build:
+
+ $ patch -p1 < mxe_fixes.patch
+
+Build all required packages:
+
+ $ 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.
+You can also use "MXE_TARGETS=x86_64-w64-mingw32.static.posix" to build
+64-bit installers instead.
+
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
--------
Per default it will install the cross-compiled packages in:
- $HOME/sr_mingw
+ $HOME/sr_mingw_release_32
+
+This depends on whether you're doing a 64-bit or 32-bit build, and whether
+you enabled debug builds or not.
Please edit the script if you want to change any settings.