Search:  
Gentoo Wiki

XBMC


This article is part of the HOWTO series.
Installation Kernel & Hardware Networks Portage Software System X Server Gaming Non-x86 Emulators Misc

Contents

Introduction

This will be a brief HOWTO set up Linux XBMC on a fresh Gentoo install.

Here's the original instructions from the XBMC Team

http://xbmc.org/wiki/?title=HOW-TO_compile_XBMC_for_Linux_from_source_code

Alphacube

Beginning

First things first. We assume that there will already be a working Internet connection, a working X setup and a system with no broken dependencies. To double check all this,

Code: Update your world
 
  # emerge -avDN world
  # revdep-rebuild
  


In order to download the XBMC-linux source, we'll need dev-util/subversion

Code: Install subversion
 
  # emerge -av subversion
  

Dependencies

XBMC-linux has a bunch of deps. These are the version taken from portage as of 2008-06-27


Note: libmms needs to be in version 0.4 wich currently is not in portage

Overlay

We need to set up a local Portage Overlay and download the ebuild and patches from bugs.gentoo.org Start by creating a directory where your own portage will be stored. /usr/portage/local is a good standard. In this dir we need a subdir that corresponds to where libmms is in default portage.
/usr/portage/media-libs/libmms

Code: Creating directories
 # mkdir /usr/portage/local
 # mkdir /usr/portage/local/media-libs
 # mkdir /usr/portage/local/media-libs/libmms
 

Edit your /etc/make.conf adding the following line:

Code: /etc/make.conf
 PORTDIR_OVERLAY="/usr/portage/local/"
 

Getting libmms-0.4

Next step is to populate our new Overlay with some files, namely those from a bug filed for libmms-0.4 at http://bugs.gentoo.org/show_bug.cgi?id=203647

There is a ebuild for libmms-0.4 there and some patches. Download the ebuild to /usr/portage/local/media-libs/libmms/ and create a subdir calld files where we'll store the patch files. by running the following

Code: Downloading ebuild
 # cd /usr/portage/local/media-libs/libmms/
 # wget http://bugs.gentoo.org/attachment.cgi?id=149276 -O libmms-0.4.ebuild
 # mkdir files
 # cd files
 # wget http://bugs.gentoo.org/attachment.cgi?id=149277 -O libmms-0.4-cpp_headers.patch
 

The -O option tells wget that we want to save the file with a different name.

Next is to digest the new ebuild.

Code: digest
 # cd ..
 # ebuild libmms-0.4.ebuild digest
 

Emerging Deps

Finally it's time to emerge

emerge boost glew libmad tre libogg libvorbis sdl-image sdl-mixer sdl-gfx sdl-sound fribidi lzo sqlite curl hal mysql libmms libpcre zip enca jasper faac cmake -va

XBMC

Get source code

Code: Change to whatever install directory you want and pull the source
 # cd /usr/
 # svn checkout https://xbmc.svn.sourceforge.net/svnroot/xbmc/branches/linuxport/XBMC
 

This could take a while as it is approximately 726Mb. Now is a good time to actually talk to your family for once.

Compiling

When svn is finished there's a new directory XBMC. Before we can build XBMC we need to run the configure script, so enter XBMC dir and

Code: configure
 cd /path/to/XBMC
 ./configure
 

The script checks for all dependencies and exits with a error if it can't find a specific dependecy. But everything should be just fine. now finally, the last step.

Code: MAKE
 make
 

Exec

Fire up your Xsession if it's not up already, open a terminal window

Code: ^_^
 cd /path/to/XBMC
 ./xbmc.bin
 

wrapping up

Updating XBMC

This is easy. Enter your XBMC dir and issue

svn up

That will sync the svn tree, next is to redo the ./configure and make procedure

Last words

I hope this howto will be of help to at least someone =) cheers Alphacube 14:51, 27 June 2008 (UTC)

Troubles

Floating Point exception

This seems to be Gentoo specific. What underlying ones and zeros that creates this error I have no idea =)

But if you have a Intel HD Audio built in to your kernel like me.

Linux Kernel Configuration: Device Drivers - Sound - Advanced Linux Sound Architecture - PCI Devices
Device Drivers --->
Sound --->
Advanced Linux Sound Architecture --->
PCI Devices
<*> Intel HD Audio

There's a fix ^_^

emerge media-libs/alsa-lib with debug useflag.

Code: emerge alsa-lib
 echo "media-libs/alsa-lib debug" >> /etc/portage/package.use
 emerge alsa-lib -va
 #check for the debug useflag before answering yes
 

Kudos to hrak@xbmc.org/forum

that figured this out

Alphacube 18:37, 1 July 2008 (UTC)

Other troubles

I recomend that you pay a visit to the official XBMC forum at http://xbmc.org/forum

Easy way

There's a ebuild available at [1]

download and put it in your Overlay as shown in 3.1

Retrieved from "http://www.gentoo-wiki.info/XBMC"

Last modified: Fri, 19 Sep 2008 13:11:00 +0000 Hits: 3,859