Posts Tagged ‘moblin 2.1’

XBMC (9.11 camelot or trunk) on Moblin 2.1

Thursday, February 11th, 2010

Download either the latest SVN build (the SVN build used during this howto was 27627) or the latest stable (9.11 Camelot)

(For information 9.11 Camelot is revision 26018 - list of tags is here http://xbmc.svn.sourceforge.net/viewvc/xbmc/tags/)
Run only one of the below ;-)

svn co http://xbmc.svn.sourceforge.net/svnroot/xbmc/trunk xbmc
svn co -r 26018 http://xbmc.svn.sourceforge.net/svnroot/xbmc/trunk xbmc

Follow the "Preparing the system" (Part 1) section for Boxee on moblin.

install libflac, libsmblient and libtiff

sudo yum install flac flac-devel libsmbclient-devel libtiff-devel

install libfaad and libmpeg2

wget ftp://fr2.rpmfind.net/linux/rpmfusion/free/fedora/releases/10/Everything/i386/os/faad2-libs-2.6.1-6.fc10.i386.rpm
wget ftp://ftp.ntua.gr/pub/linux/rpmfusion/free/fedora/releases/10/Everything/x86_64/os/faad2-devel-2.6.1-6.fc10.i386.rpm
wget ftp://ftp.ntua.gr/pub/linux/rpmfusion/free/fedora/releases/10/Everything/x86_64/os/libmpeg2-0.5.1-3.fc10.i386.rpm
wget ftp://ftp.ntua.gr/pub/linux/rpmfusion/free/fedora/releases/10/Everything/x86_64/os/libmpeg2-devel-0.5.1-3.fc10.i386.rpm
sudo rpm -ivh faad2* libmpeg*

For camelot, you will need to apply a patch in order to get past an SSL error. The bug is here http://trac.xbmc.org/ticket/8137

wget http://trac.xbmc.org/raw-attachment/ticket/8137/libbdnav-remove-openssl.patch
patch < libbdnav-remove-openssl.patch

choose xbmc/cores/dvdplayer/Codecs/libbdnav/configure.ac

For working VDPAU you will need libvdpau2.0. The easiest way to do that is to install the latest 195 nvidia driver. If you don't have an nvidia card, then just ignore this, you will compile the code with VPDAU disabled.
If you are doing this, I will assume that you have allready followed my guide for the acer revo on moblin.. You will need to recompile Xorg for this to work and change the permissions on the Xorg binary (Parts 3,4 and 6)

sudo sh NVIDIA-Linux-x86-195.30-pkg1.run

Change the -j argument to number of threads your CPU can execute simulatneously +1. On a revo (Atom N230) that's 3.

mkdir /home/brendan/xbmc_camelot
cd camelot
./bootstrap
./configure --prefix=/home/brendan/xbmc_camelot
make -j3
make install

Compiling Boxee under Moblin 2.1 (working VDPAU)

Thursday, February 11th, 2010

Part 1 - Preparing the system for compilation - Missing dependancies

wget http://91.190.227.59/xbmc_builddeps.tar.gz
tar xvfz xbmc_builddeps.tar.gz
cd xbmc_builddeps
sudo rpm -ivh --force glew-*
sudo rpm -ivh libmms* libcdio-* libmp4v2-1.5.0.1-8.moblin2.i586.rpm enca-* faac* mysql-*
sudo yum install -y SDL-devel SDL_image-devel SDL_gfx-devel SDL_mixer-devel libogg-devel libvorbis-devel boost boost-devel bzip2-devel fribidi-devel lzo-devel jasper-devel libpng-devel hal-devel cmake gperf libtool zip nasm libXtst-devel libXi-devel libXmu-devel fontconfig-devel freetype-devel libXinerama-devel pcre-devel gcc gcc-c++ sqlite-devel curl-devel openssl-devel avahi-devel libsamplerate-devel pulseaudio-devel patch diffutils make binutils pixman-devel glibc-devel libpciaccess-devel libgomp43 mpfr autoconf quilt cmake unzip automake mesa-libgl mesa-libgl-devel mesa-libGLU-devel mesa-libGLU libjpeg-devel libmad-devel libjpeg-devel libsamplerate-devel svn tcp_wrappers-devel tcp_wrappers-libs libvdpau libmikmod

in /etc/yum.conf add the following repo:

[fedora10]
name=fedora10
baseurl=http://download.fedora.redhat.com/pub/fedora/linux/updates/10/i386
enabled=1
gpgcheck=0

Now we use the newly added repo to install some dependencies:

sudo yum install SDL alsa-lib enca faac glew libmp4v2 mysql-libs nss openssl tre libvorbis xmms-libs wavpack wavpack-devel

remove the added repo from /etc/yum.conf

Next, install libmad (it's possible you only need libmad-devel, but I'm not sure):

wget ftp://ftp.ntua.gr/pub/linux/rpmfusion/free/fedora/releases/10/Everything/x86_64/os/libmad-0.15.1b-8.fc10.i386.rpm
wget ftp://ftp.ntua.gr/pub/linux/rpmfusion/free/fedora/releases/10/Everything/x86_64/os/libmad-devel-0.15.1b-8.fc10.i386.rpm
sudo rpm -ivh libmad-0.15.1b-8.fc10.i386.rpm libmad-devel-0.15.1b-8.fc10.i386.rpm

Symlink libmysqlclient where boxee expects it
sudo ln -s /usr/lib/mysql/libmysqlclient.so.16.0.0 /usr/lib/libmysqlclient.so

Only if you want VDPAU acceleration (only with Nvidia GPUs)

wget ftp://mirror.switch.ch/pool/2/mirror/fedora/linux/updates/10/i386/libvdpau-0.2-1.fc10.i386.rpm
rpm -ivh libvdpau-0.2-1.fc10.i386.rpm

Part 2 - Compiling and installing

Download sources 0.9.14 from boxee.tv

wget http://dl.boxee.tv/boxee-0.9.14.6992-sources.tar.bz2
tar xjvf boxee-0.9.14.6992-sources.tar.bz2

Next we get a newer version of xbmc Linux/Tools

svn co https://xbmc.svn.sourceforge.net/svnroot/xbmc/trunk/tools/Linux
cp --no-dereference --preserve=all -R -v ~/Linux ~/boxee-0.9.14.6992-sources/tools/

Next we apply this patch made for ubuntu.

wget http://www.madeo.co.uk/wp-content/uploads/2010/02/patch.txt
patch -p 1 < patch.txt
cd ~/boxee-0.9.14.6992-sources/web/Project\ Mayhem\ III/
zip -v -r -9 -o ../Project_Mayhem_III_webserver_v1.0.zip ./*
cd ~/boxee-0.9.14.6992-sources/
autoreconf

Now configure boxee with chosen prefix. default for moblin is /usr but I thought it was nicer to keep everything tidy where I was. Afterwards, just copy the included lib from xbmc into /usr/include to make compilation go smoothly

./configure --prefix=/home/brendan/boxee
cp xbmc/lib/cximage-6.0/jpeg/jpegint.h /usr/include/

in makefile add -lnsl inside the LIB= variable
Change the -j argument to number of threads your CPU can execute simulatneously +1. On a revo (Atom N230) that's 3.

make -j3
make install

In /home/brendan/boxee/bin I can now just run ./xbmc.

Optional - replacing mutter/clutter with boxee

sudo mv /etc/xdg/moblin/xinitrc /etc/xdg/moblin/xinitrc.old

and add this as the new /etc/xdg/moblin/xinitrc

#!/bin/bash
cd /home/brendan/boxee/bin
./xbmc

Credits for patch go to "jdb2" from http://forum.boxee.tv/showthread.php?t=13206