]> sigrok.org Git - sigrok-util.git/blame - cross-compile/mingw/README
sigrok-fwextract-kingst-la2016: concentrate RCC flags in one spot
[sigrok-util.git] / cross-compile / mingw / README
CommitLineData
91d4c754
UH
1-------------------------------------------------------------------------------
2README
3-------------------------------------------------------------------------------
4
5This is a small script for cross-compiling sigrok and its dependencies
404eb356 6for MinGW-w64/Windows systems.
91d4c754
UH
7
8
9Status
10------
11
6e15e874 12Working.
91d4c754
UH
13
14
15Requirements
16------------
17
18 - bash
19 - gcc
20 - make
5b7f0ad2 21 - cmake
91d4c754 22 - git
5b7f0ad2 23 - wget
37d3fad3 24 - p7zip
d24d85a2 25 - unzip
5b7f0ad2 26 - pkg-config (>= 0.22)
73740f2d 27 - sdcc (needed for building the fx2lafw firmware)
5b7f0ad2 28 - nsis
4afaa19d 29 - MXE (*-w64-*.posix targets; *-pc-* and non-posix targets are not supported)
91d4c754
UH
30
31
32MXE setup
33---------
34
404eb356 35First, get the MXE cross-compile environment for MinGW-w64/Windows:
91d4c754
UH
36
37 $ cd $HOME
38 $ git clone https://github.com/mxe/mxe.git mxe-git
39 $ cd mxe-git
404eb356 40
b9d1ce76
UH
41Apply some fixes that are currently required for a proper build:
42
43 $ patch -p1 < mxe_fixes.patch
ca121a83 44 $ patch -p1 < libusb1_upgrade.patch
b9d1ce76 45
01b17442 46Build all required packages:
404eb356 47
7b5d29b6
UH
48 $ make MXE_TARGETS=i686-w64-mingw32.static.posix \
49 MXE_PLUGIN_DIRS=plugins/examples/qt5-freeze \
f8dd8b1e 50 gcc glib libzip libusb1 libftdi1 hidapi glibmm qtbase qtimageformats \
e6891272
UH
51 qtsvg qttranslations boost check gendef libieee1284 \
52 qtbase_CONFIGURE_OPTS='-no-sql-mysql'
91d4c754
UH
53
54This will take a while.
55
4afaa19d
UH
56You can also use "MXE_TARGETS=x86_64-w64-mingw32.static.posix" to build
5764-bit installers instead.
58
91d4c754
UH
59See http://mxe.cc for details on MXE.
60
7b5d29b6
UH
61Note: We're "freezing" the Qt5 version to Qt 5.7.x, since that's the last
62version that supports Windows XP (which we currently still want to support).
63
91d4c754
UH
64
65Building
66--------
67
68 $ ./sigrok-cross-mingw
69
70Per default it expects MXE in:
71
72 $HOME/mxe-git
73
74Per default it will install the cross-compiled packages in:
75
4afaa19d
UH
76 $HOME/sr_mingw_release_32
77
78This depends on whether you're doing a 64-bit or 32-bit build, and whether
79you enabled debug builds or not.
91d4c754
UH
80
81Please edit the script if you want to change any settings.
82