]>
Commit | Line | Data |
---|---|---|
91d4c754 UH |
1 | ------------------------------------------------------------------------------- |
2 | README | |
3 | ------------------------------------------------------------------------------- | |
4 | ||
5 | This is a small script for cross-compiling sigrok and its dependencies | |
404eb356 | 6 | for MinGW-w64/Windows systems. |
91d4c754 UH |
7 | |
8 | ||
9 | Status | |
10 | ------ | |
11 | ||
6e15e874 | 12 | Working. |
91d4c754 UH |
13 | |
14 | ||
15 | Requirements | |
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 | ||
32 | MXE setup | |
33 | --------- | |
34 | ||
404eb356 | 35 | First, 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 |
41 | Apply 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 | 46 | Build 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 | |
54 | This will take a while. | |
55 | ||
4afaa19d UH |
56 | You can also use "MXE_TARGETS=x86_64-w64-mingw32.static.posix" to build |
57 | 64-bit installers instead. | |
58 | ||
91d4c754 UH |
59 | See http://mxe.cc for details on MXE. |
60 | ||
7b5d29b6 UH |
61 | Note: We're "freezing" the Qt5 version to Qt 5.7.x, since that's the last |
62 | version that supports Windows XP (which we currently still want to support). | |
63 | ||
91d4c754 UH |
64 | |
65 | Building | |
66 | -------- | |
67 | ||
68 | $ ./sigrok-cross-mingw | |
69 | ||
70 | Per default it expects MXE in: | |
71 | ||
72 | $HOME/mxe-git | |
73 | ||
74 | Per default it will install the cross-compiled packages in: | |
75 | ||
4afaa19d UH |
76 | $HOME/sr_mingw_release_32 |
77 | ||
78 | This depends on whether you're doing a 64-bit or 32-bit build, and whether | |
79 | you enabled debug builds or not. | |
91d4c754 UH |
80 | |
81 | Please edit the script if you want to change any settings. | |
82 |