view DOCS/tech/crosscompile.txt @ 35033:387485e3956a

vf_ass: Improve format query. The output format should always match the input format for this filter, and we should set the EOSD capability. This also simplifies adding support for more formats. Patch by Xidorn Quan [quanxunzhen gmail com].
author reimar
date Wed, 29 Aug 2012 16:06:26 +0000
parents 68d3b36b9dfc
children 7f73ecc9ccda
line wrap: on
line source

Due to a lack of Windows developers, it is a good idea to allow Linux
developers to do at least some basic check of their code.
This HOWTO explains how to set up cross-compilation.


MinGW under Debian
==================

First, you need to install the "mingw32" package and get a MPlayer SVN
checkout.

Next, you need quite a lot of dependencies. Since this is for testing and
not actually use, the easiest way is to use this package:
http://natsuki.mplayerhq.hu/~reimar/mpl_mingw32.tar.bz2
NOTE that this is likely to be quite out-dated and might include packages
with security issues, so do not use it to build binaries for real use.

After extracting this package into the MPlayer source-tree,
you only need to run the included linux-mingw.sh to configure (it just runs
./configure --host-cc=cc --target=i686-mingw32msvc --cc=i586-mingw32msvc-cc
--windres=i586-mingw32msvc-windres --ranlib=i586-mingw32msvc-ranlib
--extra-cflags="-I$PWD/osdep/mingw32"
--extra-ldflags="-L$PWD/osdep/mingw32"
--with-freetype-config="$PWD/osdep/mingw32/ftconf") and then run make.

You should be able to run the generated binary with Wine, if you want to.

The steps as command-lines:

sudo apt-get install mingw32
svn co svn://svn.mplayerhq.hu/mplayer/trunk MPlayer-mingw
cd MPlayer-mingw
wget http://natsuki.mplayerhq.hu/~reimar/mpl_mingw32.tar.bz2
tar -xjf mpl_mingw32.tar.bz2
sh linux-mingw.sh
make


Wine
====

First, you need to install the "Wine" package and get a MPlayer SVN
checkout.

You don't need any dependencies other than those you already have for
your Linux build, because the Wine and Linux build will use them together.

Configure with

  ./configure --target=i686-wine --cc="winegcc -m32" --windres=wrc --enable-gui

and add any options you normally use for your Linux build, then run make.