]> sigrok.org Git - sigrok-util.git/blobdiff - cross-compile/mingw/README
sigrok-cross-mingw: Patch MXE's glib to fix compiler warnings.
[sigrok-util.git] / cross-compile / mingw / README
index a9984dcef5850dfeea4fac3caa3d7e44a0c3c95a..8f206c07e9a800277e98a97e9bbb7cd1c15bd567 100644 (file)
@@ -21,12 +21,11 @@ Requirements
  - cmake
  - git
  - wget
- - unzip
  - p7zip
  - pkg-config (>= 0.22)
  - sdcc (needed for building the fx2lafw firmware)
  - nsis
- - MXE (*-w64-* targets, the *-pc-* targets are not supported)
+ - MXE (*-w64-*.posix targets; *-pc-* and non-posix targets are not supported)
 
 
 MXE setup
@@ -38,25 +37,27 @@ First, get the MXE cross-compile environment for MinGW-w64/Windows:
  $ 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 \
-   glibmm qtbase qtsvg 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.
 
+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
 --------
@@ -69,7 +70,10 @@ Per default it expects MXE in:
 
 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.