annotate DOCS/tech/crosscompile.txt @ 36920:40ad45360c8a

Replace old item 'potmeter' by new item 'pimage'. Recent versions of the X11/GTK GUI didn't allow to control a potmeter, because that didn't seem to make any sense. In order to get rid of the confusing potmeter that doesn't distinguish from a hpotmeter and in order to allow the more useful behaviour recent versions of the X11/GTK GUI have been utilized (and because we're still supporting item 'potmeter' for reasons of compatibility with old skins), introduce new item 'pimage' that reuses most of the current potmeter code. Additionally, remove remaining code and documentation of 'potmeter'.
author ib
date Mon, 17 Mar 2014 12:29:46 +0000
parents 7f73ecc9ccda
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
34115
3d7ee643b110 Port to Wine.
ib
parents:
diff changeset
1 Due to a lack of Windows developers, it is a good idea to allow Linux
3d7ee643b110 Port to Wine.
ib
parents:
diff changeset
2 developers to do at least some basic check of their code.
3d7ee643b110 Port to Wine.
ib
parents:
diff changeset
3 This HOWTO explains how to set up cross-compilation.
3d7ee643b110 Port to Wine.
ib
parents:
diff changeset
4
3d7ee643b110 Port to Wine.
ib
parents:
diff changeset
5
3d7ee643b110 Port to Wine.
ib
parents:
diff changeset
6 MinGW under Debian
3d7ee643b110 Port to Wine.
ib
parents:
diff changeset
7 ==================
3d7ee643b110 Port to Wine.
ib
parents:
diff changeset
8
35424
7f73ecc9ccda Update MinGW cross-compilation instructions.
reimar
parents: 34122
diff changeset
9 First, you need to install the "gcc-mingw-w64" package and get a MPlayer SVN
34115
3d7ee643b110 Port to Wine.
ib
parents:
diff changeset
10 checkout.
3d7ee643b110 Port to Wine.
ib
parents:
diff changeset
11
35424
7f73ecc9ccda Update MinGW cross-compilation instructions.
reimar
parents: 34122
diff changeset
12 To get a fully functional build, you need to get a lot of dependencies
7f73ecc9ccda Update MinGW cross-compilation instructions.
reimar
parents: 34122
diff changeset
13 compiled first. This is outside the scope of this document.
34115
3d7ee643b110 Port to Wine.
ib
parents:
diff changeset
14
35424
7f73ecc9ccda Update MinGW cross-compilation instructions.
reimar
parents: 34122
diff changeset
15 Then you need to run
7f73ecc9ccda Update MinGW cross-compilation instructions.
reimar
parents: 34122
diff changeset
16 ./configure --enable-cross-compile --windres=i686-w64-mingw32-windres --cc=i686-w64-mingw32-gcc
7f73ecc9ccda Update MinGW cross-compilation instructions.
reimar
parents: 34122
diff changeset
17 and make.
7f73ecc9ccda Update MinGW cross-compilation instructions.
reimar
parents: 34122
diff changeset
18 To compile a 64-bit Windows binary, use
7f73ecc9ccda Update MinGW cross-compilation instructions.
reimar
parents: 34122
diff changeset
19 ./configure --enable-cross-compile --windres=x86_64-w64-mingw32-windres --cc=x86_64-w64-mingw32-gcc
7f73ecc9ccda Update MinGW cross-compilation instructions.
reimar
parents: 34122
diff changeset
20 instead.
7f73ecc9ccda Update MinGW cross-compilation instructions.
reimar
parents: 34122
diff changeset
21 For files meant to run on a different computer you should usually
7f73ecc9ccda Update MinGW cross-compilation instructions.
reimar
parents: 34122
diff changeset
22 use --enable-runtime-cpudetection.
34115
3d7ee643b110 Port to Wine.
ib
parents:
diff changeset
23
3d7ee643b110 Port to Wine.
ib
parents:
diff changeset
24 You should be able to run the generated binary with Wine, if you want to.
3d7ee643b110 Port to Wine.
ib
parents:
diff changeset
25
3d7ee643b110 Port to Wine.
ib
parents:
diff changeset
26 The steps as command-lines:
3d7ee643b110 Port to Wine.
ib
parents:
diff changeset
27
35424
7f73ecc9ccda Update MinGW cross-compilation instructions.
reimar
parents: 34122
diff changeset
28 sudo apt-get install gcc-mingw-w64
34115
3d7ee643b110 Port to Wine.
ib
parents:
diff changeset
29 svn co svn://svn.mplayerhq.hu/mplayer/trunk MPlayer-mingw
3d7ee643b110 Port to Wine.
ib
parents:
diff changeset
30 cd MPlayer-mingw
35424
7f73ecc9ccda Update MinGW cross-compilation instructions.
reimar
parents: 34122
diff changeset
31 ./configure --enable-cross-compile --windres=i686-w64-mingw32-windres --cc=i686-w64-mingw32-gcc
34115
3d7ee643b110 Port to Wine.
ib
parents:
diff changeset
32 make
3d7ee643b110 Port to Wine.
ib
parents:
diff changeset
33
3d7ee643b110 Port to Wine.
ib
parents:
diff changeset
34
3d7ee643b110 Port to Wine.
ib
parents:
diff changeset
35 Wine
3d7ee643b110 Port to Wine.
ib
parents:
diff changeset
36 ====
3d7ee643b110 Port to Wine.
ib
parents:
diff changeset
37
3d7ee643b110 Port to Wine.
ib
parents:
diff changeset
38 First, you need to install the "Wine" package and get a MPlayer SVN
3d7ee643b110 Port to Wine.
ib
parents:
diff changeset
39 checkout.
3d7ee643b110 Port to Wine.
ib
parents:
diff changeset
40
3d7ee643b110 Port to Wine.
ib
parents:
diff changeset
41 You don't need any dependencies other than those you already have for
3d7ee643b110 Port to Wine.
ib
parents:
diff changeset
42 your Linux build, because the Wine and Linux build will use them together.
3d7ee643b110 Port to Wine.
ib
parents:
diff changeset
43
3d7ee643b110 Port to Wine.
ib
parents:
diff changeset
44 Configure with
3d7ee643b110 Port to Wine.
ib
parents:
diff changeset
45
34122
68d3b36b9dfc Revise documentation.
ib
parents: 34115
diff changeset
46 ./configure --target=i686-wine --cc="winegcc -m32" --windres=wrc --enable-gui
34115
3d7ee643b110 Port to Wine.
ib
parents:
diff changeset
47
34122
68d3b36b9dfc Revise documentation.
ib
parents: 34115
diff changeset
48 and add any options you normally use for your Linux build, then run make.