Fuppes can be compiled to run on the PCH, but it has a few dependencies that we'll need to build first.
These are:
- zlib
- libpcre
- libsqlite3
- libxml2
- taglib
We'll do these one at a time, but before we start we need to prep our environment for cross compiling..
[update: a compiled binary is available here.]
Make sure you've built your tool chain like this article.
Source the env file:
zlib
Get zlib from http://www.zlib.net/index.html, I used this link.
cd zlib
wget http ://www.zlib.net/zlib-1.2.3.tar.gz
tar xvf zlib-1.2.3.tar.gz
cd zlib-1.2.3
Build zlib with
make
Copy the required files to the staging directory:
cp zconf.h ~/toolchain/smp86xx_toolchain.20080505/build_mipsel_nofpu/staging_dir/include/
cp libz.a ~/toolchain/smp86xx_toolchain.20080505/build_mipsel_nofpu/staging_dir/lib/
zlib is now ready for use.
libpcre
Next download, configure and install pcre.
mkdir pcre
cd pcre
wget f tp://ftp.csx.cam.ac.uk/pub/software/programming/pcre/pcre-7.8.tar.gz
tar xvf pcre-7.8.tar.gz
cd pcre-7.8
./configure --host=mipsel-linux --prefix=/home/mr_stuff/toolchain/smp86xx_toolchain.20080505/build_mipsel_nofpu/staging_dir/
make && make install
Next!
libsqlite3
Download sqlite3m configure and build it.
mkdir sqlite3
cd sqlite3
wget h ttp://www.sqlite.org/sqlite-amalgamation-3.6.12.tar.gz
tar xvf sqlite-amalgamation-3.6.12.tar.gz
cd sqlite-3.6.12
./configure --host=mipsel-linux --prefix=/home/mr_stuff/toolchain/smp86xx_toolchain.20080505/build_mipsel_nofpu/staging_dir/
make && make install
xml2
Download xml2 configure and build it.
mkdir xml2
cd xml2
wget f tp://xmlsoft.org/libxml2/libxml2-2.7.3.tar.gz
tar xvf libxml2-2.7.3.tar.gz
cd libxml2-2.7.3
./configure --host=mipsel-linux --prefix=/home/mr_stuff/toolchain/smp86xx_toolchain.20080505/build_mipsel_nofpu/staging_dir/
make && make install
taglib
Download taglib configure and build it.
mkdir taglib
cd taglib
wget h ttp://developer.kde.org/~wheeler/files/src/taglib-1.5.tar.gz
tar xvf taglib-1.5.tar.gz
cd taglib-1.5
./configure --host=mipsel-linux --prefix=/home/mr_stuff/toolchain/smp86xx_toolchain.20080505/build_mipsel_nofpu/staging_dir/
make
make install
Building fuppes
Once all the pre-requsites are installed, its time to download and build fuppes.
Download fuppes:
mkdir fuppes
cd fuppes
svn co -r629 h ttps://fuppes.svn.sourceforge.net/svnroot/fuppes/trunk fuppes
autoreconf -vfi
We have to edit the ./configure script otherwise it will detect my systems libuuid and try and use it.. We just for uuid off.
edit ./configure
Find the line
below that block you see another line:
Place the following line above it as such:
if test $pkg_failed = yes; then
Now run configure, but first make sure /share exists and is writable.
./configure --host=mipsel-linux -disable-transcoding --prefix=/share/Apps/fuppes
make
make install
This will install fuppes to /share/Apps/fuppes (just as we'll have it on the PCH -- it must be in this location)
Now copy the rest of the libs over.
Now package it all up.
tar cvzf fuppes.0.629.0.tgz fuppes
Now copy this file to your PCH and put it in the /share/Apps folder (create if required).
Then extract fuppes:
tar xvzf fuppes.0.629.0.tgz
cd fuppes
To run (until I write a script to run it as a daemon):
export LD_LIBRARY_PATH=/share/Apps/fuppes/lib/
./fuppes
Make a simple script to run it (fuppes.sh):
export LD_LIBRARY_PATH=/share/Apps/fuppes/lib/
/share/Apps/fuppes/bin/fuppes
This could probably be done a whole lot better, but it works! Have fun.

Nice Guide
Hi Mr Stuff,
I'm currently developing fuppes and trying to see exactly what devices people have been able to get fuppes running on so that we can better accommodate people in the future. This guide on getting fuppes to work with Popcorn Hour looks great.
My question is, have you tried getting the latest fuppes to work with popcorn hour? Either way I think I'll add popcorn hour to the fuppes wiki as a device; obviously people have had success with it.
Thanks,
Robert
(robertmassaioli at gmail dot com)