X-Git-Url: https://sigrok.org/gitweb/?p=sigrok-util.git;a=blobdiff_plain;f=cross-compile%2Fmingw%2FREADME;h=766b3da05618896b2e8233315c63ecc79fc87a3b;hp=4abf3b87a81bcc705103ebdee42e3a55fd8bf85c;hb=baa25b646fcb87dcf0ce439551c6b6150f2a4f21;hpb=73740f2de4800782081aeba5a72ec83799faa29a diff --git a/cross-compile/mingw/README b/cross-compile/mingw/README index 4abf3b8..766b3da 100644 --- a/cross-compile/mingw/README +++ b/cross-compile/mingw/README @@ -3,7 +3,7 @@ README ------------------------------------------------------------------------------- This is a small script for cross-compiling sigrok and its dependencies -for Windows/MinGW systems. +for MinGW-w64/Windows systems. Status @@ -18,22 +18,40 @@ Requirements - bash - gcc - make + - cmake - git - - pkg-config (>= 0.22) + - wget - unzip + - p7zip + - pkg-config (>= 0.22) - sdcc (needed for building the fx2lafw firmware) - - MXE + - nsis + - MXE (*-w64-* targets, the *-pc-* 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 qt boost + +For now we need to build gcc and winpthreads in two steps. First: + + $ make MXE_TARGETS=i686-w64-mingw32.static gcc winpthreads + +In src/gcc.mk change "--enable-threads=win32" to "--enable-threads=posix". + +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 boost check This will take a while.