Added the "libass-devel" package. This package is needed for subtitles.

Added the "python-devel taglib-devel libplist-devel" package. This package is essential.

Added the "bluez-libs-devel" package to supply libbluetooth

Added the "gettext-devel" package. This package is needed for autopoint.

Otherwise you get this error:

Can't exec "autopoint": No such file or directory at /usr/share/autoconf/Autom4te/FileUtils.pm line 345.
autoreconf: failed to run autopoint: No such file or directory
autoreconf: autopoint is needed because this package uses Gettext

If you are wanting to include support for VDPAU or VDAAP you must install the devel packages for these to be included in the compilation process, same goes for bluray support:
Packages include

3 Configure

Are you going to use LIRC and a remote control? Starting with Fedora 12 the default LIRC socket file name has changed to /var/run/lirc/lircd (from /dev/lircd). You might need to provide the configure script with this parameter before compiling XBMC:

./configure --with-lirc-device=/var/run/lirc/lircd

If not, simply do

./configure

With the above installed packages this should go smoothly :)

4 Build

make

If you recieve a compile error on Fedora 16/17 or CentOS related to afp.h, please see the related bug ticket for a fix. On CentOS 6, afp.h is located at /usr/include/afpfs-ng/afp.h.

If XBMC fails to build for some other reason, don't worry! It may just be a temporary problem. Because people are adding new code to XBMC's master branch all the time, an update may have broken something. Read the information under "How do I obtain useful compiler output?" in this XBMC forum post to learn more about what to do in this situation.

5 Install

sudo make install

When this completes you are done!

For Fedora 10-12, SELinux will prevent loading of some .so files due to potential security problems. To allow the loading of these files (thats what you probably want), simply open a terminal and as sudo (or as root) execute the following commands:

In Fedora 14 i found after compilation that xbmc was failing to run. The logs suggested that xbmc could not find libmicrohttpd.so.5 this was true as there had been a recent update to this library. XBMC should really link to libmicrohttpd.so rather than so.5 but until then a symlink does the trick

sudo ln -s /usr/lib64/libmicrohttpd.so /usr/lib64/libmicrohttpd.so.5

or replace lib64 with lib for 32 bit systems

Simply log into Gnome (or KDE) and open up a terminal and type 'xbmc' and it will load.

6 Fedora Kickstart File

Here is the kickstart file created by Cookieboy that was used to create the Fedora 12 buildslave. You can use this to do a full install with all the required packages to build XBMC from Source. This kickstart file will grab the packages from the Internet. You can modify the kickstart file to grab all the packages it can from the CDROM install and then the Net for the other packages if you would like. Cookieboy created the file with a local fedora repo rsynced down on a local network. This file has been modified to download from the public Internet.

After this kickstart file is used, in the /source folder you will find two scripts. One will download the latest CrystalHD header files to compile against, as well as a simple script to download xbmc trunk to the /source folder. Run those if you wish, and you can edit them to suit your needs. The other thing this file does, is turn on yum-updatesd and has it run every 24 hours to download any system updates so that they can be installed quickly.