X-Git-Url: https://sigrok.org/gitweb/?p=sigrok-util.git;a=blobdiff_plain;f=cross-compile%2Fmingw%2FREADME;h=14b328c69bb6b1afc618b935e79afeb88c2aa826;hp=a9984dcef5850dfeea4fac3caa3d7e44a0c3c95a;hb=3aabe9a93a530c7db4beb58e5f365e690a82734f;hpb=d140e8b4bbe0f7a40ad6e964441c60499d0d87a0 diff --git a/cross-compile/mingw/README b/cross-compile/mingw/README index a9984dc..14b328c 100644 --- a/cross-compile/mingw/README +++ b/cross-compile/mingw/README @@ -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 hidapi 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.