3 2. Getting the source code
4 3. Installing the required Ubuntu packages
8 -----------------------------------------------------------------------------
10 -----------------------------------------------------------------------------
12 We currently recommend Ubuntu Precise(12.04) or later.
13 A gfx-adapter with OpenGL acceleration is highly recommended and 24/32
14 bitdepth is required with OpenGL.
16 NOTE TO NEW LINUX USERS: All lines that are prefixed with the '$'
17 character are commands that need to be typed into a terminal window /
18 console (similar to the command prompt for Windows). Note that the '$'
19 character itself should NOT be typed as part of the command.
21 -----------------------------------------------------------------------------
22 2. Getting the source code
23 -----------------------------------------------------------------------------
25 $ sudo apt-get install git-core
27 $ git clone git://github.com/xbmc/xbmc.git xbmc
29 -----------------------------------------------------------------------------
30 3. Installing the required Ubuntu packages
31 -----------------------------------------------------------------------------
33 Two methods exist to install the required Ubuntu packages:
35 [NOTICE] For supported old Ubuntu versions, some packages might be outdated.
36 For those, you can either compile them manually, or use our backports
37 available from our official stable PPA:
39 http://launchpad.net/~team-xbmc/+archive/ppa
41 --------------------------------------------------------------
42 3a. Use a single command to get all build dependencies
43 --------------------------------------------------------------
44 [NOTICE] Supported on ubuntu >= 11.10 (oneiric)
46 You can get all build dependencies used for building the packages on the PPA
48 Add the unstable and build-depends PPAs:
49 $ sudo apt-get install python-software-properties software-properties-common
50 $ sudo add-apt-repository ppa:team-xbmc/unstable
51 $ sudo add-apt-repository ppa:team-xbmc/xbmc-ppa-build-depends
54 Here is the magic command to get the build dependencies (used to compile the version on the PPA).
55 $ sudo apt-get build-dep xbmc
57 * Optional: If you do not want xbmc to be installed via PPA, you can removed the PPAs again:
58 $ sudo add-apt-repository -r ppa:team-xbmc/unstable
59 $ sudo add-apt-repository -r ppa:team-xbmc/xbmc-ppa-build-depends
61 *** Avoid using "aptitude" for the build-dep command. It doesn't resolve everything.
63 *** For developers and anyone else who compiles frequently it is recommended to use ccache
64 $ sudo apt-get install ccache
66 *** A tip for those with multiple computers at home is to check out distcc (totally unsupported from xbmc of course)
67 $ sudo apt-get install distcc
70 --------------------------------------------------------------------
71 3b. Alternative: Manual dependency installation
72 --------------------------------------------------------------------
74 For Ubuntu (all versions >= 7.04):
76 $ sudo apt-get install automake bison build-essential cmake curl cvs default-jre fp-compiler gawk gdc gettext git-core gperf libasound2-dev libass-dev libboost-dev libboost-thread-dev libbz2-dev libcap-dev libcdio-dev libcurl3 libcurl4-gnutls-dev libdbus-1-dev libenca-dev libflac-dev libfontconfig-dev libfreetype6-dev libfribidi-dev libglew-dev libhal-dev libhal-storage-dev libiso9660-dev libjasper-dev libjpeg-dev liblzo2-dev libmad0-dev libmicrohttpd-dev libmodplug-dev libmpeg2-4-dev libmpeg3-dev libmysqlclient-dev libogg-dev libogg-dev libpcre3-dev libplist-dev libpng-dev libpulse-dev libsamplerate-dev libsdl-dev libsdl-gfx1.2-dev libsdl-image1.2-dev libsdl-mixer1.2-dev libsmbclient-dev libsqlite3-dev libssh-dev libssl-dev libtiff-dev libtinyxml-dev libtool libudev-dev libusb-dev libvdpau-dev libvorbisenc2 libxmu-dev libxrandr-dev libxrender-dev libxt-dev libyajl-dev mesa-utils nasm pmount python-dev python-imaging python-sqlite swig unzip yasm zip zlib1g-dev
79 $ sudo apt-get install autopoint libltdl-dev
81 On 8.10 and older versions, libcurl is outdated and thus XBMC will not compile properly.
82 In this case you will have to manually compile the latest version.
83 $ wget http://curl.sourceforge.net/download/curl-7.19.7.tar.gz
84 $ tar -xzf curl-7.19.7.tar.gz
86 $ ./configure --disable-ipv6 --without-libidn --disable-ldap --prefix=/usr
91 $ sudo apt-get install libtag1-dev
94 We need a new version of taglib than what is available. We supply a Makefile in
95 lib/taglib to make it easy to install into /usr/local.
96 $ sudo apt-get remove libtag1-dev
98 $ sudo make -C lib/taglib install
100 Unless you are proficient with how linux libraries and versions work, do not
101 try to provide it yourself, as you will likely mess up for other programs.
104 -----------------------------------------------------------------------------
106 -----------------------------------------------------------------------------
109 -----------------------------------------------------------------------------
111 -----------------------------------------------------------------------------
114 -----------------------------------------------------------------------------
116 -----------------------------------------------------------------------------
117 $ sudo apt-get remove xbmc*