2009-11-06, 10:30
Update: building process is due of change
I'm able to build my own Ubuntu XBMC specific packages. For those interested in doing this, this is the complete setup. I'm using Ubuntu 9.04 for this:
Update your system with all necessary packages:
Add the build user and correct rights:
I'm using a different user (buildd) for the building process. These are the instructions for setting it up.
Give the buildd user the correct rights,
enter name, e-mail, etc
Setup GPG key for the build user:
A gpg key is needed for this user, you can either follow this guide; https://help.ubuntu.com/community/GnuPrivacyGuardHowto or use the instructions below:
- select (5) RSA (sign only)
- select keysize of 2048
- Enter your name, e-mail and comments according the buildd user created before.
- Don't use a Passphrase
Get a copy of the XBMC source:
Now it's time to checkout the development branch:
Setup the pbuilder and temp directory:
This is where all the packages will be stored and be built:
I had a "out of space" problem, so that why decided to create symbolic links instead;
Create the base image
Now we can use the pbuilder-dist script to create our base set. (Jaunty corresponds with 9.04. Karmic with 9.10)
Start the building process:
You can now initiate the building process by using the following commands:
I'm able to build my own Ubuntu XBMC specific packages. For those interested in doing this, this is the complete setup. I'm using Ubuntu 9.04 for this:
Update your system with all necessary packages:
Code:
sudo apt-get update
Code:
sudo apt-get install subversion make g++ gcc gawk pmount libtool nasm automake cmake gperf unzip bison libsdl-dev libsdl-image1.2-dev libsdl-gfx1.2-dev libsdl-mixer1.2-dev libsdl-sound1.2-dev libfribidi-dev liblzo-dev libfreetype6-dev libsqlite3-dev libogg-dev libasound-dev python-sqlite libglew-dev x11proto-xinerama-dev libxinerama-dev libxrandr-dev libxrender-dev libmad0-dev libogg-dev libvorbis-dev libpcre3-dev libdbus-1-dev libhal-dev libhal-storage-dev libjasper-dev libfontconfig-dev libbz2-dev libboost-dev libfaac-dev libenca-dev libxt-dev libxtst-dev libxmu-dev libpng-dev libjpeg-dev libpulse-dev mesa-utils libcdio-dev libsamplerate-dev libmms-dev liblzo2-dev libfaad-dev libsmbclient-dev libwavpack-dev libmpeg2-4-dev libdts-dev liba52-0.7.4-dev libswscale-dev libpostproc-dev libavformat-dev libavcodec-dev libnotify-bin bzr checkinstall dput devscripts debhelper dpatch seahorse pbuilder debootstrap
Add the build user and correct rights:
I'm using a different user (buildd) for the building process. These are the instructions for setting it up.
Code:
sudo adduser buildd
Give the buildd user the correct rights,
enter name, e-mail, etc
Code:
sudo pico /etc/sudoers
Code:
## lines to be added in order to build XBMC
buildd ALL=NOPASSWD: ALL
Code:
su buildd
Code:
cd
Setup GPG key for the build user:
A gpg key is needed for this user, you can either follow this guide; https://help.ubuntu.com/community/GnuPrivacyGuardHowto or use the instructions below:
Code:
gpg --cert-digest-algo=SHA256 --default-preference-list="h10 h8 h9 h11 s9 s8 s7 s3 z2 z3 z1 z0" --gen-key
- select (5) RSA (sign only)
- select keysize of 2048
- Enter your name, e-mail and comments according the buildd user created before.
- Don't use a Passphrase
Get a copy of the XBMC source:
Now it's time to checkout the development branch:
Code:
svn checkout https://xbmc.svn.sourceforge.net/svnroot/xbmc/trunk/
Setup the pbuilder and temp directory:
This is where all the packages will be stored and be built:
I had a "out of space" problem, so that why decided to create symbolic links instead;
Code:
mkdir /home/buildd/tmp
sudo ln -s /home/buildd/tmp /tmp/buildd
mkdir /home/buildd/pbuilder
sudo rm -rf /var/cache/pbuilder
sudo ln -s /home/buildd/pbuilder /var/cache/pbuilder
Create the base image
Now we can use the pbuilder-dist script to create our base set. (Jaunty corresponds with 9.04. Karmic with 9.10)
Code:
cd trunk/tools/Linux/packaging/
./pbuilder-dist karmic create
Start the building process:
You can now initiate the building process by using the following commands:
Code:
cd trunk/tools/Linux/packaging/
./ppa-builder.sh -p karmic