This is is provided as under GPL V3 read If you improve on this, please consider sharing your improvements or modifications cause it can help everyone else.)
Find in This How-to:
*WARNING, sudo is not being used in this tutorial, I hate sudo and run as root for maintenance purposes ONLY. Otherwise you must use sudo.
If you have an existing XBMCLive which has been compiled via SVN must start with step A. If you used ccache with SVN, it therefore must be cleared out, just in case before using GIT, follow step B
A) aptitude purge subversion -y -q
B) ccache -zcC
Now proceed to step 1 and wait for completion and everytime after that for updates only use Step 2
If you have an existing XBMCLive which has never been compiled, simply start with step 1, thereafter every-time you wish to Simply update the existing code to a more recent version and compile use step 2
1) Upgrading existing XBMCLive with via compile of GIT source
2) Updating an already existing GIT COMPILE to latest version
Finally you should, though your not obliged to improve your boot time and install ureadahead
[b]FAQ
[/b]
Q) I'm running maverick, do I need more dependencies?
A) YesNote:
New Distros or non Ubuntu Perhaps should try apt-get if your distro does not respond to aptitude (aptitude can still be installed) Or whatever your distro responds as similar commands.
Q)[SIZE=2]Random compile problems cause errors.[/SIZE]
A)thx to deppan for contrib
Q) Will this method work in all Linux distros[SIZE=2]?[/SIZE]
A) This method should work on any Ubuntu based distros or other Linux distro provided correct dependencies are installed for your distro, Hardy consult the readmes. for anything else consult the readmes respective to your platform. Don't forget Your distros commands may vary.
Q) I'm a total moron and lazy git is there a script I can run to do this[SIZE=2]?[/SIZE]
A)Thks to boykster who kindly put this how-to into a script, has been updated since then by me.usage is xgb.sh upgrade first time then xgb.sh refresh
Note: <upgrade> Should only be ran once only at FIRST USE and thereafter <refresh>, Do Not USE REFRESH First, you will mess things UP.
Q) [SIZE=2]Can I compile XBMC ontop of a running copy?[/SIZE]
A) You can be compiling XBMC over the top of a running copy e.g if your watching a movie, simply by not closing service down (by issuing stop xbmc-live), pretty much like xbox days, xbmc can be updated over the top with not adverse reaction, in case of failed compile xbmc.bin isn't compiled and nothing is changed, max it can happen is your running the previous version you had. When in doubt backup.
Q) [SIZE=2]Are there any ppa' that we can use with updated drivers/programs? [/SIZE]
A)[SIZE=2] Added Karmic and lucid ppa's [/SIZE][SIZE=2]see this post[/SIZE](would appreciated help)
[SIZE=3]
[/SIZE] Q) [SIZE=2]Sometimes when compiling XBMC.bin fails to compile, I didn't change anything?! [/SIZE]
A) Building with script or instruction will sometimes fail, this is mainly because GIT TRUNK breaks due to code changes, if neither is working ask in IRC #XBMC-Linux, chances are devs know building in a particular platform is borked. Alternatively wait 24/48 hours or until team xbmc fix whatever is breaking builds.
Q) Are there any video/audio/apps most recent builds?
A) find all my ppas here (help with these would be awesome)
Q) When I do git pull --rebase I get errors, how can I fix it?
A) [SIZE=2]git reset --hard [/SIZE][SIZE=2]to[/SIZE][SIZE=2] step 2)[/SIZE][SIZE=2], [/SIZE][SIZE=2]this will help update all files that may not be updating right, this has also been added to script.[/SIZE]
Q) [SIZE=2]Some dependencies been added to script, should I start again? [/SIZE]
A) No need, just add the dependencies that have changed or as below.
if your libboost is lesser than 1.40.0 you may need to compile boost from source
Q) Can I compile XBMC with bluray playback support?
A) Yes, as long as the media is not encrypted follow the steps below and add to above manual compile.
If you do this the the ./configure line will need to be something like this;
Q) Can I compile XBMC with airplay support support?
A) Yes since today apparently 23rd Aug 2011
Please don't PM me with support requests [SIZE=2](because no one learns anything)[/SIZE]
Show your appreciation! REP up this post.
Regards.
X3lectric
Find in This How-to:
- Manual Compile step by step instructions. (recommended you do it at least ONCE.
- Script Version ( see FAQ's ) DO IT after you have compiled once by hand so you learn something about what your doing.
- Update Sections (contain further extension/improvements/important information
*WARNING, sudo is not being used in this tutorial, I hate sudo and run as root for maintenance purposes ONLY. Otherwise you must use sudo.
If you have an existing XBMCLive which has been compiled via SVN must start with step A. If you used ccache with SVN, it therefore must be cleared out, just in case before using GIT, follow step B
A) aptitude purge subversion -y -q
B) ccache -zcC
Now proceed to step 1 and wait for completion and everytime after that for updates only use Step 2
If you have an existing XBMCLive which has never been compiled, simply start with step 1, thereafter every-time you wish to Simply update the existing code to a more recent version and compile use step 2
1) Upgrading existing XBMCLive with via compile of GIT source
Code:
stop xbmc-live
apt-get install python-software-properties pkg-config -y[font=verdana]
[/font]add-apt-repository [b]ppa:team-iquik/xbmc-stable[/b]
apt-get update
apt-get install [b]libplist-dev [/b]python-support python-dev ccache libyajl-dev libvdpau-dev debhelper zip git-core make g++ gcc gawk pmount libtool yasm nasm automake cmake gperf gettext unzip bison libsdl-dev libsdl-image1.2-dev libsdl-gfx1.2-dev libsdl-mixer1.2-dev libfribidi-dev liblzo2-dev libfreetype6-dev libsqlite3-dev libogg-dev libasound-dev python-sqlite libglew-dev libcurl3 libcurl4-openssl-dev x11proto-xinerama-dev libxinerama-dev libxrandr-dev libxrender-dev libmad0-dev libogg-dev libvorbisenc2 libsmbclient-dev libmysqlclient-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 libmpeg3-dev libfaad-dev libflac-dev
libiso9660-dev libass-dev libssl-dev fp-compiler gdc libwavpack-dev
libmpeg2-4-dev libmicrohttpd-dev libmodplug-dev libboost-thread-dev -y -q
apt-get build-dep xbmc -y
mkdir ~/setup
cd $HOME/setup
git clone git://github.com/xbmc/xbmc.git
make -C lib/libnfs && sudo make -C lib/libnfs install
./bootstrap; ./configure --prefix=/usr --enable-vdpau --disable-pulse ; make -j4
make -C lib/addons/script.module.pil
make install prefix=/usr
start xbmc-live
Code:
stop xbmc-live
cd $HOME/setup/xbmc
make distclean
git reset --hard
git clean -xfd
git pull --rebase
make -C lib/libnfs && sudo make -C lib/libnfs install
./bootstrap ; ./configure --prefix=/usr --enable-vdpau --disable-pulse --disable-crystalhd
make -C $HOME/setup/xbmc/lib/addons/script.module.pil
make -j4
make install prefix=/usr
start xbmc-live
Code:
[b] apt-get install ureadahead -y -q[/b]
[/b]
Q) I'm running maverick, do I need more dependencies?
A) Yes
Code:
apt-get install autopoint
New Distros or non Ubuntu Perhaps should try apt-get if your distro does not respond to aptitude (aptitude can still be installed) Or whatever your distro responds as similar commands.
Q)[SIZE=2]Random compile problems cause errors.[/SIZE]
A)
Code:
./bootstrap && export MAKE=make && ./configure --prefix=/usr --enable-vdpau --disable-pulse ; make -j4
Q) Will this method work in all Linux distros[SIZE=2]?[/SIZE]
A) This method should work on any Ubuntu based distros or other Linux distro provided correct dependencies are installed for your distro, Hardy consult the readmes. for anything else consult the readmes respective to your platform. Don't forget Your distros commands may vary.
Q) I'm a total moron and lazy git is there a script I can run to do this[SIZE=2]?[/SIZE]
A)Thks to boykster who kindly put this how-to into a script, has been updated since then by me.
Code:
wget -nc -q http://dl.dropbox.com/u/4325533/XCI/xgb.sh; chmod +x xgb.sh
Note: <upgrade> Should only be ran once only at FIRST USE and thereafter <refresh>, Do Not USE REFRESH First, you will mess things UP.
Q) [SIZE=2]Can I compile XBMC ontop of a running copy?[/SIZE]
A) You can be compiling XBMC over the top of a running copy e.g if your watching a movie, simply by not closing service down (by issuing stop xbmc-live), pretty much like xbox days, xbmc can be updated over the top with not adverse reaction, in case of failed compile xbmc.bin isn't compiled and nothing is changed, max it can happen is your running the previous version you had. When in doubt backup.
Q) [SIZE=2]Are there any ppa' that we can use with updated drivers/programs? [/SIZE]
A)[SIZE=2] Added Karmic and lucid ppa's [/SIZE][SIZE=2]see this post[/SIZE](would appreciated help)
[SIZE=3]
[/SIZE] Q) [SIZE=2]Sometimes when compiling XBMC.bin fails to compile, I didn't change anything?! [/SIZE]
A) Building with script or instruction will sometimes fail, this is mainly because GIT TRUNK breaks due to code changes, if neither is working ask in IRC #XBMC-Linux, chances are devs know building in a particular platform is borked. Alternatively wait 24/48 hours or until team xbmc fix whatever is breaking builds.
Q) Are there any video/audio/apps most recent builds?
A) find all my ppas here (help with these would be awesome)
Q) When I do git pull --rebase I get errors, how can I fix it?
A) [SIZE=2]git reset --hard [/SIZE][SIZE=2]to[/SIZE][SIZE=2] step 2)[/SIZE][SIZE=2], [/SIZE][SIZE=2]this will help update all files that may not be updating right, this has also been added to script.[/SIZE]
Q) [SIZE=2]Some dependencies been added to script, should I start again? [/SIZE]
A) No need, just add the dependencies that have changed or as below.
Code:
[SIZE=2][color=Black]apt-get install install [/color][/SIZE]libboost-thread-dev libyajl-dev [b]libplist-dev[/b]
Q) Can I compile XBMC with bluray playback support?
A) Yes, as long as the media is not encrypted follow the steps below and add to above manual compile.
Code:
cd $HOME/setup/xbmc/lib/libbluray
make
make install
Q) Can I compile XBMC with airplay support support?
A) Yes since today apparently 23rd Aug 2011
Code:
./configure --prefix=/usr --enable-vdpau --disable-pulse --enable-libbluray
Show your appreciation! REP up this post.
Regards.
X3lectric