<sect1 id="howto-compilation">
<title>Compiling from source</title>

<para>First, download and install development packages for &kde;, Qt, and X11.
Those should be available in your distribution, for example in Debian the
package names are <literal>kdelibs4-dev</literal>,
<literal>libqt3-mt-dev</literal> and <literal>xlibs-dev</literal>. You may need
other development packages as well.</para>

<sect2 id="howto-compilation-sources">
<title>Getting sources</title>

<sect3 id="howto-compilation-release">
<title>Official release</title>

<para>Download the latest <literal>.tar.bz2</literal> from the
<ulink url="http://sourceforge.net/project/showfiles.php?group_id=71710">Files
section</ulink> of &kplayer; project at SourceForge. Then extract it</para>

<para><userinput><command>tar</command> <option>xjf</option>
<filename>kplayer-0.5.3.tar.bz2</filename></userinput></para>

<para>The code will be in the <filename>kplayer-0.5.3</filename>
subdirectory</para>

<para><userinput><command>cd</command>
<filename>kplayer-0.5.3</filename></userinput></para>

</sect3>

<sect3 id="howto-compilation-cvs">
<title>Current CVS</title>

<para>Login to SourceForge CVS</para>

<para><userinput><command>cvs</command>
<option>-d:pserver:anonymous@cvs.sourceforge.net:/cvsroot/kplayer</option>
login</userinput></para>

<para>and hit &Enter; if it asks for a password. Then download the code</para>

<para><userinput><command>cvs</command> <option>-z3</option>
<option>-d:pserver:anonymous@cvs.sourceforge.net:/cvsroot/kplayer</option>
co kplayer</userinput></para>

<para>The code will be in the <filename>kplayer</filename> subdirectory</para>

<para><userinput><command>cd</command>
<filename>kplayer</filename></userinput></para>

</sect3>

</sect2>

<sect2 id="howto-compilation-compilation">
<title>Compile, install, run</title>

<para>Create the <filename>configure</filename> script</para>

<para><userinput><command>make</command> <option>-f</option>
<filename>Makefile.dist</filename></userinput></para>

<para>and run it</para>

<para><userinput><command>./configure</command> <option>--prefix</option>
`kde-config --prefix`</userinput></para>

<para>If at this point you are getting errors about missing libraries, you will
probably need to install more development packages from your distribution. The
<filename>configure</filename> script is very verbose, you will be able to tell
which package you need from its output. If you need even more information, look
in the <filename>config.log</filename> file. You will need to go to the bottom
and then scroll a page or two up to get to the point where it reported the
error. If everything fails, ask for help on the
<ulink url="http://sourceforge.net/forum/forum.php?forum_id=244388">&kplayer;
user forum</ulink>. Do not forget to include the full output of
<filename>configure</filename> and the <filename>config.log</filename>
file.</para>

<para>Once <command>configure</command> succeeds, compile the code</para>

<para><userinput><command>make</command></userinput></para>

<para>If this step fails, you can again ask for help on the
<ulink url="http://sourceforge.net/forum/forum.php?forum_id=244388">&kplayer;
user forum</ulink> providing the full output of <command>make</command>.</para>

<para>Once <command>make</command> finishes, install the program</para>

<para><userinput><command>su</command> <option>-c</option>
'<command>make</command> install'</userinput></para>

<para>and run it</para>

<para><userinput><command>kplayer</command></userinput></para>

<para>This last command will also produce quite verbose output on your console.
This is the output you need to send in if you ever
<link linkend="howto-bug-reporting">submit a bug report</link> or ask for
help.</para>

</sect2>

<sect2 id="howto-compilation-notes">
<title>Notes</title>

<sect3 id="howto-compilation-mandrake">
<title>Mandrake 10</title>

<para>At least some Mandrake 10 versions put <filename>libGL.la</filename> in
the wrong place, so if the <filename>configure</filename> script cannot find it,
you will have to create a symbolic link</para>

<para><userinput><command>ln</command> <option>-s</option>
<filename>/usr/lib/libGL.la</filename>
<filename>/usr/X11R6/lib/libGL.la</filename></userinput></para>

<para>Ales Tosovsky wrote a detailed HOWTO
<ulink url="http://linux.tosovsky.info/exec.php?show=kplayer">in Czech</ulink>
about compiling &kplayer; on Mandrake 10 and translated it into <ulink
url="http://linux.tosovsky.info/exec.php?show=kplayeren">English</ulink>.</para>

</sect3>

<sect3 id="howto-compilation-fedora">
<title>Fedora Core 2 on x86_64</title>

<para>Fred successfully compiled &kplayer; on x86_64 using Fedora Core 2 and
2.6.6-1.435.2.3smp kernel. Here is how he ran
<command>configure</command>:</para>

<para><userinput><command>./configure</command> <option>--prefix=`kde-config
--prefix`</option> <option>--enable-libsuffix=64</option>
<option>--with-qt-includes=/usr/lib64/qt-3.3/include</option>
<option>--with-qt-libraries=/usr/lib64/qt-3.3/lib</option></userinput></para>

<para>all on one line of course.</para>

</sect3>

</sect2>

</sect1>
