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