Get MythTV from the mythtv.org web site. There are two installation methods you may choose from. The first is to download the latest release in tarball format and compile. The tarball release of MythTV should work on a wide variety of systems and should be the preferred method for new users. If you wish to use the CVS version of MythTV you may obtain it from CVS this way:
$ mkdir mythtv
$ cd mythtv
$ cvs -d :pserver:mythtv@cvs.mythtv.org:/var/lib/mythcvs login
Logging in to :pserver:mythtv@cvs.mythtv.org:/var/lib/mythcvs
CVS password: mythtv
$ cvs -z3 -d :pserver:mythtv@cvs.mythtv.org:/var/lib/mythcvs checkout mythtv
The other MythTV modules may be downloaded from CVS the same way; replace "mythtv" with "mythweather", "mythgallery", "mythmusic", etc.
If you wish to stay up-to-date with CVS, you may replace "checkout mythtv"
with update mythtv
after you've done your initial download.
NOTE: If you are going to use CVS to compile MythTV rather than using the distribution tarball, it is strongly recommended that you join the http://www.mythtv.org/mailman/listinfo/mythtv-commits/ and http://www.mythtv.org/mailman/listinfo/mythtv-dev/ mailing lists.
Get XMLTV from http://xmltv.sourceforge.net. Download version 0.5.25 if you're in North America.
NOTE for Mandrake users: If you have added a "PLF" mirror, you may skip the next step and type: # urpmi libmp3lame0 libmp3lame0-devel NOTE for Red Hat users: If you are installing with apt or yum, you may skip this step, it will be taken care of. Otherwise get lame and lame-devel from FreshRPMS: http://freshrpms.net/rpm/lame/ After downloading, be sure to install both: # rpm -Uvh lame*
Get lame from http://www.mp3dev.org/mp3. Download the source code to v3.93.1 by following the links to sourceforge.net
If you've got a system with an AMD K6-2 or a VIA C3 processor, make the
following change in the settings.pro
file.
Look for
-march=pentiumproand replace it with
-march=i586before you compile.
Recent AMD processors, like the Duron, Thunderbird and Athlon don't need this change.
Open a shell and switch to the directory where you saved lame.
$ tar -xzf lame-3.93.1.tar.gz
$ cd lame-3.93.1
$ ./configure
$ make
$ make test
$ su
# make install
Check that it worked:
# ls -l /usr/local/lib
-rw-r--r-- 1 root root 381706 Nov 4 14:22 libmp3lame.a
-rwxr-xr-x 1 root root 674 Nov 4 14:22 libmp3lame.la*
lrwxrwxrwx 1 root root 19 Nov 4 14:22 libmp3lame.so ->
libmp3lame.so.0.0.0*
lrwxrwxrwx 1 root root 19 Nov 4 14:22 libmp3lame.so.0 ->
libmp3lame.so.0.0.0*
-rwxr-xr-x 1 root root 360197 Nov 4 14:22
libmp3lame.so.0.0.0*
# exit
$
RPMs for XMLTV and all of its dependencies can be obtained from http://atrpms.physik.fu-berlin.de/name/xmltv/. The web page has a list of all the dependent packages you must download and install.
# rpm -Uvh xmltv* perl*
If you install from this location you may skip to Manually building MythTV.
RPMs for XMLTV and all of its dependencies are located in Mandrake's "contrib". If you have added a contrib mirror, try installing XMLTV:
# urpmi xmltv
If this does not work, it is possible that contrib for your Mandrake version
does not have XMLTV, so you may install the XMLTV prerequisites by typing:
# urpmi perl-xml-twig perl-xml-writer perl-datemanip perl-libwww-perl
and skipping straight to the XMLTV compilation step.
NOTE: Red Hat Linux 8.0 and SuSE 8.1 users, you must download and install an updated version of libexpat. The version that ships with Red Hat Linux 8.0 and SuSE 8.1 (version 1.95.4) is buggy, and will cause problems with XML::Twig. All other distributions may skip this step and proceed with untar'ing the xmltv file.
If you get errors installing XML::Twig or other XMLTV prerequisites, try deleting the old versions of libexpat
$ su
# rm -f /usr/lib/libexpat*
# /sbin/ldconfig
# exit
Download version 1.95.5 from sourceforge.net: http://sourceforge.net/projects/expat/
Open a shell prompt:
$ tar -xzf expat-1.95.5.tar.gz
$ cd expat-1.95.5
$ ./configure
$ make
$ su
# make install
# /sbin/ldconfig
# exit
$
Continuing on:
$ tar -xjf xmltv-0.5.25.tar.bz2
Install the xmltv prerequisites:
$ su
# perl -MCPAN -e shell
cpan> install XML::Twig
cpan> install Date::Manip
Date::Manip is up to date.
cpan> install LWP
cpan> install XML::Writer
cpan> exit
Change to the XMLTV directory and compile it:
$ cd xmltv-0.5.25
$ perl Makefile.PL
You can answer "N" to the tv_check, tv_pick_cgi questions. Say "yes" to
the grabber required for your location.
You may get errors about modules not being installed. They shouldn't matter if you're installing North America and have followed the instructions to this point.
$ make
$ make test
$ su
# make install
# exit
Unpack MythTV
$ tar -xjf mythtv-0.13.tar.bz2
$ cd mythtv-0.13
$ ./configure
$ qmake mythtv.pro
$ make
NOTE for Red Hat 8 users: You must manually modify a Makefile within the themes directory, otherwise your on screen display (OSD) will be "generic" rather than themed. The solution is to edit the Makefile within the themes directory and comment out (using a # symbol before each line) every line that starts with the word "strip". Make sure you switch back to the MythTV build directory before executing the next step.
Switch to superuser:
$ su
# make install
# exit
NOTE: subsequent configuration steps assume that you are within
the MythTV directory that you cd
'd to above.
Since MythTV uses a client/server architecture, multiple frontend computers can simultaneously access content on a Myth system. Live TV, watching and scheduling recordings, etc. are all possible from multiple frontends.
To get a better picture of what is needed to run a frontend, note the following:
Other than the exclusion of the MySQL server and XMLTV, the MythTV compilation procedure is the same as when you're setting up both a backend and a frontend. However, you will need to install the database access libraries.
Once MythTV is compiled and installed, you must change your
/usr/local/share/mythtv/mysql.txt
or ~/.mythtv/mysql.txt
file's "DBHostName" field to point to your master backend's IP address.
Run the MythTV setup program on your master backend. Under the "General" menu, change the IP address of the current machine (by default, "127.0.0.1") to the real external IP address - 127.0.0.1 is the loopback address and no external machine can access it. Change the Master Server IP setting to the same IP address as well.
Installation of MythTV on Gentoo consists of simply emerging the desired ebuild because all of the packages are now part of the official Portage tree.
$ su -
# emerge --sync # make sure portage is up to date.
# vi /etc/make.conf
Add mysql to your USE variable. i.e. USE="mysql ...."
# emerge mythtv