view DOCS/xml/cs/ports.xml @ 17631:b1378adb995f

make swscale-example compile patch by (Alan Curry <pacman TheWorld com>)
author michael
date Thu, 16 Feb 2006 12:52:09 +0000
parents 654b2a611db5
children 83c1acef76d5
line wrap: on
line source

<?xml version="1.0" encoding="iso-8859-2"?>
<!-- Synced with: 1.76 -->
<chapter id="ports" xreflabel="Ports">
<title>Porty</title>

<sect1 id="linux">
<title>Linux</title>
<para>
Hlavní vývojovou platformou je Linux na x86, ačkoli
<application>MPlayer</application> pracuje na mnoha jiných portech Linuxu.
Binární balíčky <application>MPlayer</application>u jsou dostupné z několika
zdrojů. Nicméně <emphasis role="bold">není žádný z těchto balíčků podporován</emphasis>.
Hlaste tedy problémy jejich autorům, nikoli nám.
</para>

<sect2 id="debian">
<title>Vytvoření balíčku pro Debian</title>
<para>
Pro vytvoření balíčku pro Debian spusťte následující příkaz v adresáři se
zdrojovým kódem <application>MPlayer</application>u:

<screen>fakeroot debian/rules binary</screen>

Pokud chcete předat nějaké volby pro configure, můžete nastavit proměnnou
prostředí <envar>DEB_BUILD_OPTIONS</envar>. Například, pokud chcete GUI a
podporu OSD menu, měli byste použít:

<screen>DEB_BUILD_OPTIONS="--enable-gui --enable-menu" fakeroot debian/rules binary</screen>

Rovněž můžete předat některé proměnné do Makefile. Například, pokud chcete
kompilovat pomocí gcc 3.4 i v případě, že to není výchozí kompilátor:

<screen>CC=gcc-3.4 DEB_BUILD_OPTIONS="--enable-gui" fakeroot debian/rules binary</screen>

K vyčistění zdrojového stromu spusťte následující příkaz:

<screen>fakeroot debian/rules clean</screen>

Jako root můžete nainstalovat <filename>.deb</filename> balíček obvyklým
způsobem:

<screen>dpkg -i ../mplayer_<replaceable>version</replaceable>.deb</screen>
</para>

<para>
Christian Marillat vytvářel jistou dobu neoficiální Debianí balíčky
<application>MPlayer</application>u, <application>MEncoder</application>u a
našich bitmapových fontů, můžete si je stáhnout (apt-get) z
<ulink url="http://hpisi.nerim.net/">jeho domácí stránky</ulink>.
</para>
</sect2>

<sect2 id="rpm">
<title>Balení RPM</title>
<para>
Dominik Mierzejewski vytvořil a udržuje oficiální RPM balíčky
<application>MPlayer</application>u pro Red Hat a Fedora Core. Ty jsou dostupné
z jeho
<ulink url="http://rpm.greysector.net/mplayer/">repozitáře</ulink>.
</para>

<para>
RPM balíčky pro Mandrake/Mandriva jsou dostupné z
<ulink url="http://plf.zarb.org/">P.L.F.</ulink>.
SuSE zařadilo do své distribuce zmrzačenou verzi
<application>MPlayer</application>u. V posledních verzích ji odstranili. Funkční
RPM naleznete na
<ulink url="http://packman.links2linux.de/?action=128">links2linux.de</ulink>.
</para>
</sect2>

<sect2 id="arm">
<title>ARM</title>
<para>
<application>MPlayer</application> pracuje na Linuxových PDA s ARM CPU např.
Sharp Zaurus, Compaq Ipaq. Nejjednodušší způsob jak si opatřit
<application>MPlayer</application> je, stáhnout si jej z některého
<ulink url="http://www.openzaurus.org">OpenZaurus</ulink> balíčkového kanálu.
Pokud si jej chcete skompilovat sami, měli byste nahlédnout do adresáře
<ulink url="http://openzaurus.bkbits.net:8080/buildroot/src/packages/mplayer?nav=index.html|src/.|src/packages">mplayer</ulink>
a
<ulink url="http://openzaurus.bkbits.net:8080/buildroot/src/packages/libavcodec?nav=index.html|src/.|src/packages">libavcodec</ulink>
v buildroot OpenZaurus distribuce. Zde mají vždy poslední Makefile a patche používané
pro sestavení CVS verze <application>MPlayer</application>u s
<systemitem class="library">libavcodec</systemitem>em.
Pokud potřebujete GUI rozhraní, můžete použít xmms-embedded.
</para>
</sect2>
</sect1>

<sect1 id="bsd">
<title>*BSD</title>
<para>
<application>MPlayer</application> běží na všech známých BSD verzích.
Existují portované/pkgsrc/fink/atd verze
<application>MPlayer</application>u, které lze pravděpodobně snadněji použít,
než naše surové zdrojové kódy.
</para>

<para>
K sestavení <application>MPlayer</application>u budete potřebovat GNU make
(gmake - nativní BSD make nebude pracovat) a současnou verzi binutils.
</para>

<para>
Pokud si <application>MPlayer</application> stěžuje, že nemůže najít
<filename>/dev/cdrom</filename> nebo <filename>/dev/dvd</filename>,
vytvořte příslušný symbolický link:
<screen>ln -s /dev/<replaceable>vaše_cdrom_zařízení</replaceable> /dev/cdrom</screen>
</para>

<para>
Chcete-li používat Win32 DLL v <application>MPlayer</application>u, budete muset
rekompilovat jádro s volbou &quot;<envar>USER_LDT</envar>&quot;
(pokud nepoužíváte FreeBSD-CURRENT, kde je to výchozí).
</para>


<sect2 id="freebsd">
<title>FreeBSD</title>
<para>
Pokud váš procesor má SSE, rekompilujte jádro s volbami
&quot;<envar>CPU_ENABLE_SSE</envar>&quot; (vyžaduje FreeBSD-STABLE nebo patche
do jádra).
</para>
</sect2>

<sect2 id="openbsd">
<title>OpenBSD</title>
<para>
Vzhledem k omezením v různých verzích gas (GNU assembleru &ndash; pozn. překl.)
(relokace vs MMX), budete muset kompilovat ve dvou krocích:
Nejprve se ujistěte že je nenativní as jako první ve vaší <envar>$PATH</envar>
a proveďte <command>gmake -k</command>, pak zajistěte, aby se použila nativní
verze a proveďte <command>gmake</command>.
</para>
<para>
Od OpenBSD 3.4 není již výše uvedená metoda potřeba.
</para>
</sect2>

<sect2 id="darwin">
<title>Darwin</title>
<para>
Viz sekce <link linkend="macos">Mac OS</link>.
</para>
</sect2>
</sect1>

<sect1 id="unix">
<title>Komerční Unix</title>

<para>
<application>MPlayer</application> byl portován na mnoho komerčních variant
Unixu. Jelikož vývojová prostředí na těchto systémech bývají odlišná od těch
na svobodných Unixech, budete muset provést ruční úpravy, aby se kompilace
povedla.
</para>

<sect2 id="solaris">
<title>Solaris</title>
<para>
<application>MPlayer</application> by měl běžet na Solarisu 2.6 nebo novějším.
Použijte SUN audio rozhraní pomocí volby <option>-ao sun</option> pro přehrávání
zvuku.
</para>

<para>
Na <emphasis role="bold">UltraSPARC</emphasis>ích, <application>MPlayer</application>
využívá jejich rozšíření <emphasis role="bold">VIS</emphasis>
(ekvivalentní MMX), zatím jen v
<systemitem class="library">libmpeg2</systemitem>,
<systemitem class="library">libvo</systemitem>
a <systemitem class="library">libavcodec</systemitem>, ale nikoli v
<systemitem class="library">mp3lib</systemitem>. Můžete přehrávat VOB soubor
na 400MHz CPU. Budete k tomu potřebovat nainstalovanou
<ulink url="http://www.sun.com/sparc/vis/mediaLib.html"><systemitem class="library">mLib</systemitem></ulink>.
</para>

<para>
Pro kompilaci balíku budete potřebovat GNU <application>make</application>
(<filename>gmake</filename>, <filename>/opt/sfw/gmake</filename>), jelikož
nativní make Solarisu nebude pracovat. Typickou chybou kompilace s make
Solarisu namísto GNU make je:
<screen>
   % /usr/ccs/bin/make
   make: Fatal error in reader: Makefile, line 25: Unexpected end of line seen
</screen>
</para>

<para>
Na Solarisu SPARC, potřebujete GNU C/C++ Compiler; nezáleží na tom, zda je
GNU C/C++ compiler konfigurován s nebo bez GNU assembleru.
</para>

<para>
Na Solarisu x86, potřebujete GNU assembler a GNU C/C++ compiler,
konfigurovaný pro použití GNU assembleru! Kód <application>MPlayer</application>u
na platformě x86 intenzivně používá MMX, SSE a 3DNOW! instrukce,
které nemůže být kompilovány Sun assemblerem <filename>/usr/ccs/bin/as</filename>.
</para>

<para>
Skript <filename>configure</filename> zkouší zjistit, který assembler je použitý
vaším příkazem &quot;gcc&quot; (v případě že autodetekce selže, použijte volbu
<option>--as=<replaceable>/kdekoli/máte/nainstalován/gnu-as</replaceable></option>
pro nastavení <filename>configure</filename> skriptu tak, aby našel GNU
"as" na vašem systému).
</para>

<para>
Chybová zpráva z <filename>configure</filename> na systému Solaris x86
s použitím GCC bez GNU assembleru:
<screen>
   % configure
   ...
   Checking assembler (/usr/ccs/bin/as) ... , failed
   Please upgrade(downgrade) binutils to 2.10.1...
</screen>
(Řešení: Nainstalujte a použijte gcc konfigurovaný s <option>--with-as=gas</option>)
</para>

<para>
Typická chyba, kterou dostanete při kompilaci pomocí GNU C kompilátoru, který
nepoužívá GNU as:
<screen>
   % gmake
   ...
   gcc -c -Iloader -Ilibvo -O4 -march=i686 -mcpu=i686 -pipe -ffast-math
        -fomit-frame-pointer  -I/usr/local/include   -o mplayer.o mplayer.c
   Assembler: mplayer.c
   "(stdin)", line 3567 : Illegal mnemonic
   "(stdin)", line 3567 : Syntax error
   ... more "Illegal mnemonic" and "Syntax error" errors ...
</screen>
</para>

<para>
Díky chybám v Solarisu 8, nemůžete přehrávat DVD disky větší než 4 GB:
</para>

<itemizedlist>
<listitem><para>
Ovladač sd(7D) na Solarisu 8 x86 má chybu v přístupu k diskovému bloku >4GB
na zařízeních, které mají logical blocksize != DEV_BSIZE (čili CD-ROM a DVD média).
Díky 32Bit int overflow, dostanete přístupovou diskovou adresu modulo 4GB
(<ulink url="http://groups.yahoo.com/group/solarisonintel/message/22516"/>).
Tento problém neexistuje ve SPARC verzi Solarisu 8.
</para></listitem>

<listitem><para>
Podobná chyba je i v kódu systému souborů hsfs(7FS) (AKA ISO9660),
hsfs nemusí podporovat oddíly/disky větší než 4GB, ke všem datům je přistupováno
modulo 4GB
(<ulink url="http://groups.yahoo.com/group/solarisonintel/message/22592"/>).
Problém hsfs může být odstraněn nainstalováním patche 109764-04 (sparc) / 109765-04 (x86).
</para></listitem>
</itemizedlist>
</sect2>

<sect2 id="irix">
<title>IRIX</title>
<para>
You can either try to install the GNU install program, and (if you did
not put it in your global path) then point to the location with:
<screen>./configure --with-install=<replaceable>/path/and/name/of/install</replaceable></screen>
</para>

<para>
Or you can use the default install delivered with IRIX 6.5 in which case
you will have to edit the <filename>Makefile</filename> by hand a little bit.
Change the following two lines:
<programlisting>
  $(INSTALL) -c -m 644 DOCS/mplayer.1 $(MANDIR)/man1/mplayer.1

  $(INSTALL) -c -m 644 etc/codecs.conf $(CONFDIR)/codecs.conf
</programlisting>
to:
<programlisting>
  $(INSTALL) -m 644 mplayer.1 $(MANDIR)/man1/

  $(INSTALL) -m 644 codecs.conf $(CONFDIR)/
</programlisting>
And then do (from within the <application>MPlayer</application> source dir):
<screen>cp DOCS/mplayer.1 . ; cp etc/codecs.conf .</screen>
and then go on with building and installing.
</para>
</sect2>


<sect2 id="hp-ux">
<title>HP-UX</title>
<para>
Joe Page hosts a detailed HP-UX <application>MPlayer</application>
<ulink url="http://users.rcn.com/joepage/mplayer_on_hpux11.htm">HOWTO</ulink>
by Martin Gansser on his homepage. With these instructions the build should
work out of the box. The following information is taken from this HOWTO.
</para>

<para>
You need GCC 3.4.0 or later, GNU make 3.80 or later and SDL 1.2.7 or later.
HP cc will not produce a working program, prior GCC versions are buggy.
For OpenGL functionality you need to install Mesa and the gl and gl2 video
output drivers should work, speed may be very bad, depending on the CPU speed,
though. A good replacement for the rather poor native HP-UX sound system is
GNU esound.
</para>

<para>
Create the DVD device
scan the SCSI bus with:
</para>

<screen>
# ioscan -fn

Class          I            H/W   Path          Driver    S/W State    H/W Type        Description
...
ext_bus 1    8/16/5      c720  CLAIMED INTERFACE  Built-in SCSI
target  3    8/16/5.2    tgt   CLAIMED DEVICE
disk    4    8/16/5.<emphasis role="bold">2</emphasis>.<emphasis role="bold">0</emphasis>  sdisk CLAIMED DEVICE     <emphasis role="bold">PIONEER DVD-ROM DVD-305</emphasis>
                         /dev/dsk/c1t2d0 <emphasis role="bold">/dev/rdsk/c1t2d0</emphasis>
target  4    8/16/5.7    tgt   CLAIMED DEVICE
ctl     <emphasis role="bold">1</emphasis>    8/16/5.7.0  sctl  CLAIMED DEVICE     Initiator
                         /dev/rscsi/c1t7d0 /dev/rscsi/c1t7l0 /dev/scsi/c1t7l0
...
</screen>

<para>
The screen output shows a Pioneer DVD-ROM at SCSI address 2.
The card instance for hardware path 8/16 is 1.
</para>

<para>
Create a link from the raw device to the DVD device.
</para>

<screen>
# ln -s /dev/rdsk/c<replaceable>&lt;SCSI bus instance&gt;</replaceable>t<replaceable>&lt;SCSI target ID&gt;</replaceable>d<replaceable>&lt;LUN&gt;</replaceable> /dev/<replaceable>&lt;device&gt;</replaceable>
</screen>

<para>
Example:
</para>

<screen>
# ln -s /dev/rdsk/c1t2d0 /dev/dvd
</screen>

<para>
Below are solutions for some common problems:
</para>

<itemizedlist>
<listitem>
<para>
Crash at Start with the following error message:
<screen>
/usr/lib/dld.sl: Unresolved symbol: finite (code) from /usr/local/lib/gcc-lib/hppa2.0n-hp-hpux11.00/3.2/../../../libGL.sl
</screen>
</para>

<para>
This means that the function <systemitem>.finite().</systemitem> is not
available in the standard HP-UX math library.
Instead there is <systemitem>.isfinite().</systemitem>.
Solution: Use the latest Mesa depot file.
</para>
</listitem>

<listitem>
<para>
Crash at playback with the following error message:
<screen>
/usr/lib/dld.sl: Unresolved symbol: sem_init (code) from /usr/local/lib/libSDL-1.2.sl.0
</screen>
</para>

<para>
Solution: Use the extralibdir option of configure
<option>--with-extralibdir="/usr/lib -lrt"</option>
</para>
</listitem>

<listitem>
<para>
MPlayer segfaults with a message like this:
<screen>
Pid 10166 received a SIGSEGV for stack growth failure.
Possible causes: insufficient memory or swap space, or stack size exceeded maxssiz.
Segmentation fault
</screen>
</para>

<para>
Solution:
The HP-UX kernel has a default stack size of 8MB(?) per process.(11.0 and
newer 10.20 patches let you increase <systemitem>maxssiz</systemitem> up to
350MB for 32-bit programs). You need to extend <systemitem>maxssiz</systemitem>
and recompile the kernel (and reboot). You can use SAM to do this. (While at
it, check out the <systemitem>maxdsiz</systemitem> parameter for the maximum
amount of data a program can use. It depends on your applications, if the
default of 64MB is enough or not.)
</para>
</listitem>
</itemizedlist>

</sect2>
</sect1>

<sect1 id="windows">
<title>Windows</title>

<para>Yes, <application>MPlayer</application> runs on Windows under
  <ulink url="http://www.cygwin.com/"><application>Cygwin</application></ulink> and
  <ulink url="http://www.mingw.org/"><application>MinGW</application></ulink>.
  It does not have an official GUI yet, but the command line version
  is completely functional. You should check out the
  <ulink url="http://mplayerhq.hu/mailman/listinfo/mplayer-cygwin/">MPlayer-cygwin</ulink>
  mailing list for help and latest information.
  Official Windows binaries can be found on the
  <ulink url="http://www.mplayerhq.hu/homepage/design7/dload.html">download page</ulink>.
  Installer packages and simple GUI frontends are available from external
  sources, we have collected then in the Windows section of our
  <ulink url="http://www.mplayerhq.hu/homepage/design7/projects.html#windows">projects page</ulink>.
</para>

<para>If you wish to avoid using the command line, a simple trick is
  to put a shortcut on your desktop that contains something like the
  following in the execute section:
  <screen><replaceable>c:\path\to\</replaceable>mplayer.exe %1</screen>
  This will make <application>MPlayer</application> play any movie that is
  dropped on the shortcut. Add <option>-fs</option> for fullscreen mode.
</para>

<para>Best results are achieved with the native DirectX video output driver
  (<option>-vo directx</option>). Alternatives are OpenGL and SDL, but OpenGL
  performance varies greatly between systems and SDL is known to
  distort video or crash on some systems. If the image is
  distorted, try turning off hardware acceleration with
  <option>-vo directx:noaccel</option>. Download
  <ulink url="http://www.mplayerhq.hu/MPlayer/releases/win32/contrib/dx7headers.tgz">DirectX 7 header files</ulink>
  to compile the DirectX video output driver. Furthermore you need to have
  DirectX 7 or later installed for the DirectX video output driver to work.
  </para>

<para><link linkend="vidix">VIDIX</link> now works under Windows as
  <option>-vo winvidix</option>, although it is still experimental
  and needs a bit of manual setup. Download
  <ulink url="http://www.mplayerhq.hu/MPlayer/releases/win32/dhahelperwin/dhahelper.sys">dhahelper.sys</ulink> or
  <ulink url="http://www.mplayerhq.hu/MPlayer/releases/win32/dhahelperwin/withmtrr/dhahelper.sys">dhahelper.sys (with MTRR support)</ulink>
  and copy it to the
  <filename class="directory">libdha/dhahelperwin</filename> directory in your
  <application>MPlayer</application> source tree.
  Open a console and change to that directory. Then type

  <screen>gcc -o dhasetup.exe dhasetup.c</screen>

  and execute

  <screen>dhasetup.exe install</screen>

  as Administrator. After that you will have to reboot. When you are
  done, copy the <systemitem class="library">.so</systemitem> files from
  <filename class="directory">vidix/drivers</filename> to the
  <filename class="directory">mplayer/vidix</filename> directory
  relative to your <filename>mplayer.exe</filename>.</para>

<para>For best results <application>MPlayer</application> should use a
  colorspace that your video card supports in hardware. Unfortunately many
  Windows graphics drivers wrongly report some colorspaces as supported in
  hardware. To find out which, try

  <screen>mplayer -benchmark -nosound -frames 100 -vf format=<replaceable>colorspace</replaceable> <replaceable>movie</replaceable></screen>

  where <replaceable>colorspace</replaceable> can be any colorspace
  printed by the <option>-vf format=fmt=help</option> option. If you
  find a colorspace your card handles particularly bad
  <option>-vf noformat=<replaceable>colorspace</replaceable></option>
  will keep it from being used. Add this to your config file to permanently
  keep it from being used.</para>

<para>There are special codec packages for Windows available on our
  <ulink url="http://mplayerhq.hu/homepage/design7/codecs.html">codecs page</ulink>
  to allow playing formats for which there is no native support yet.
  Put the codecs somewhere in your path or pass
  <option>--with-codecsdir=<replaceable>c:/path/to/your/codecs</replaceable></option>
  (alternatively
  <option>--with-codecsdir=<replaceable>/path/to/your/codecs</replaceable></option>
  only on <application>Cygwin</application>) to <filename>configure</filename>.
  We have had some reports that Real DLLs need to be writable by the user
  running <application>MPlayer</application>, but only on some systems (NT4).
  Try making them writable if you have problems.</para>

<para>You can play VCDs by playing the <filename>.DAT</filename> or <filename>.MPG</filename> files
  that Windows exposes on VCDs. It works like this (adjust for the drive letter
  of your CD-ROM):</para>

<screen>mplayer <replaceable>d:/mpegav/avseq01.dat</replaceable></screen>

<para>DVDs also work, adjust <option>-dvd-device</option> for the drive letter
  of your DVD-ROM:</para>

<screen>mplayer dvd://<replaceable>&lt;title&gt;</replaceable> -dvd-device <replaceable>d</replaceable>:</screen>

<para>The <application>Cygwin</application>/<application>MinGW</application>
  console is rather slow. Redirecting output or using the
  <option>-quiet</option> option has been reported to improve performance on
  some systems. Direct rendering (<option>-dr</option>) may also help.
  If playback is jerky, try
  <option>-autosync 100</option>. If some of these options help you, you
  may want to put them in your config file.</para>

<note>

<para>On Windows the runtime CPU detection disables SSE support
  because of recurring and hard-to-trace SSE-related crashes. If you
  wish to have SSE support under Windows, you will have to compile without
  runtime CPU-detection.
</para>

<para>If you have a Pentium 4 and are experiencing a crash using the
  RealPlayer codecs, you may need to disable hyperthreading support.
</para>

</note>


<sect2 id="cygwin">
<title><application>Cygwin</application></title>

<para>You need to run <application>Cygwin</application> 1.5.0 or later in
  order to compile <application>MPlayer</application>.</para>

<para>DirectX header files need to be extracted to <filename class="directory">/usr/include/</filename> or
  <filename class="directory">/usr/local/include/</filename>.</para>

<para>Instructions and files for making SDL run under
  <application>Cygwin</application> can be found on the
  <ulink url="http://www.libsdl.org/extras/win32/cygwin/">libsdl site</ulink>.</para>

</sect2>


<sect2 id="mingw">
<title><application>MinGW</application></title>

<para>Installing a version of <application>MinGW</application> that could
  compile <application>MPlayer</application> used to be quite tricky, but it
  works out of the box now. Just install <application>MinGW</application>
  3.1.0 or later and MSYS 1.0.9 or later and tell the MSYS postinstall that
  <application>MinGW</application> is installed.</para>

<para>Extract DirectX header files to <filename class="directory">/mingw/include/</filename>.</para>

<para>MOV compressed header support requires
  <ulink url="http://www.gzip.org/zlib/">zlib</ulink>, which
  <application>MinGW</application> does not provide by default.
  Configure it with <option>--prefix=/mingw</option> and install
  it before compiling <application>MPlayer</application>.</para>

<para>Complete instructions for building <application>MPlayer</application>
  and necessary libraries can be found in the
  <ulink url="http://mplayerhq.hu/MPlayer/releases/win32/contrib/MPlayer-MinGW-Howto.txt">MPlayer MinGW HOWTO</ulink>.</para>

</sect2>


</sect1>

<sect1 id="macos">
<title>Mac OS</title>
<para>
<application>MPlayer</application> does not work on Mac OS versions before
10, but should compile out-of-the-box on Mac OS X 10.2 and up.
The preferred compiler is the Apple version of
GCC 3.x or later. If you have Mac OS X 10.3.9 or later and QuickTime 7
you can use the macosx video output driver.
</para>

<sect2 id="osx_gui">
<title>MPlayer OS X GUI</title>

<para>
You can get a native GUI for <application>MPlayer</application> together with
precompiled <application>MPlayer</application> binaries for Mac OS X from the
<ulink url="http://mplayerosx.sf.net/">MPlayerOSX</ulink> project, but be
warned: that project is not active anymore.
</para>

<para>
Fortunately, <application>MPlayerOSX</application> has been taken over
by a member of the <application>MPlayer</application> team.
Preview releases are available from our
<ulink url="http://mplayerhq.hu/dload.html">download page</ulink>
and an official release should arrive soon.
</para>

<para>
In order to build <application>MPlayerOSX</application> from source
yourself, you need the <systemitem>mplayerosx</systemitem>, the
<systemitem>main</systemitem> and a copy of the
<systemitem>main</systemitem> CVS module named
<systemitem>main_noaltivec</systemitem>.
<systemitem>mplayerosx</systemitem> is the GUI frontend,
<systemitem>main</systemitem> is MPlayer and
<systemitem>main_noaltivec</systemitem> is MPlayer built without AltiVec
support.
</para>

<para>
To check out CVS modules use:

<screen>
cvs -d:pserver:anonymous@mplayerhq.hu:/cvsroot/mplayer login
cvs -z3 -d:pserver:anonymous@mplayerhq.hu:/cvsroot/mplayer co -P mplayerosx
cvs -z3 -d:pserver:anonymous@mplayerhq.hu:/cvsroot/mplayer co -P main
</screen>
</para>

<para>
In order to build <application>MPlayerOSX</application> you will need to
set up something like this:

<screen>
MPlayer_source_directory
   |
   |--->main           (MPlayer CVS source)
   |
   |--->main_noaltivec (MPlayer CVS source configured with --disable-altivec)
   |
   |--->mplayerosx     (MPlayer OS X CVS source)
</screen>

You first need to build main and main_noaltivec.
</para>

<para>
Next, set a global variable:

<screen>export MACOSX_DEPLOYMENT_TARGET=10.3</screen>
</para>

<para>
Then, configure:
</para>

<para>
If you configure for a G4 or later CPU with AltiVec support, do as follows:
<screen>
./configure --with-termcaplib=ncurses.5 --disable-gl --disable-x11
</screen>
If you configure for a G3-powered machine without AltiVec, use:
<screen>
./configure --with-termcaplib=ncurses.5 --disable-gl --disable-x11
--disable-altivec
</screen>
You may need to edit <filename>config.mak</filename> and change
<systemitem>-mcpu</systemitem> and <systemitem>-mtune</systemitem>
from <systemitem>74XX</systemitem> to <systemitem>G3</systemitem>.
</para>

<para>
Continue with
<screen>
make
</screen>
then go to the mplayerosx directory and type

<screen>
make dist
</screen>
This will create a compressed <systemitem>.dmg</systemitem> archive
with the ready to use binary.
</para>

<para>
You can also use the <application>Xcode</application> 2.1 project;
the old project for <application>Xcode</application> 1.x does
not work anymore.
</para>
</sect2>
</sect1>

<sect1 id="exotic_platforms">
<title>Exotic Platforms</title>

<para>
<application>MPlayer</application> runs on a number of exotic platforms,
but most of the platform-specific changes from those systems have not been
merged back into the main source tree.
For build instructions you should refer to the system-specific documentation.
</para>

<sect2 id="qnx">
<title>QNX</title>
<para>
You'll need to download and install SDL for QNX. Then run
<application>MPlayer</application> with <option>-vo sdl:photon</option>
and <option>-ao sdl:nto</option> options, it should be fast.
</para>

<para>
The <option>-vo x11</option> output will be even slower than on Linux,
since QNX has only X <emphasis>emulation</emphasis> which is very slow.
</para>
</sect2>

<sect2 id="amiga">
<title>Amiga/MorphOS (GeekGadgets)</title>
<para>
The people over at <ulink url="www.amigasoft.net">www.amigasoft.net</ulink>
make current <application>MPlayer</application> and
<application>MEncoder</application> packages.
</para>

<para>
Nicholas Det at Genesi has done a big and powerful port of <application>MPlayer
</application> for MorphOS. Sadly it's based on the 0.90 series.
</para>

<para>
Get if from <ulink url="http://www.morphzone.org/">MorphZone</ulink>:
<itemizedlist>
<listitem><para>
<ulink url="http://www.morphzone.org/modules/mydownloads/singlefile.php?lid=90">
<application>MPlayer</application> 0.91 binary</ulink>
</para></listitem>
<listitem><para>
<ulink url="http://www.morphzone.org/modules/mydownloads/singlefile.php?lid=91">
<application>MPlayer</application> 0.91 source</ulink>
</para></listitem>
<listitem><para>
<ulink url="http://www.morphzone.org/modules/mydownloads/singlefile.php?lid=92">
<application>MEncoder</application> 1.0pre3 binary</ulink>
</para></listitem>
</itemizedlist>
</para>
</sect2>
</sect1>

</chapter>