Merge pull request #5069 from uNiversaI/icons
[vuplus_xbmc] / docs / README.ubuntu
1 TOC
2 1. Introduction
3 2. Getting the source code
4 3. Installing the required Ubuntu packages
5 4. How to compile
6 5. Uninstalling
7
8 -----------------------------------------------------------------------------
9 1. Introduction
10 -----------------------------------------------------------------------------
11
12 A graphics-adapter with OpenGL acceleration is highly recommended.
13 24/32 bitdepth is required along with OpenGL.
14
15 Note to new Linux users.
16 All lines that are prefixed with the '$' character are commands, that need to be typed
17 into a terminal window / console (similar to the command prompt for Windows).
18 Note that the '$' character itself should NOT be typed as part of the command.
19
20 -----------------------------------------------------------------------------
21 2. Getting the source code
22 -----------------------------------------------------------------------------
23
24 .0  $ cd $HOME
25 .1  $ git clone git://github.com/xbmc/xbmc.git xbmc
26
27 Note: You can clone any specific branch.
28
29 .1  $ git clone -b <branch> git://github.com/xbmc/xbmc.git xbmc
30
31 -----------------------------------------------------------------------------
32 3. Installing the required Ubuntu packages
33 -----------------------------------------------------------------------------
34
35 Two methods exist to install the required Ubuntu packages:
36
37 [NOTICE] For supported older Ubuntu versions, some packages might be outdated.
38          For those, you can either compile them manually, or use our backports
39          available from our official stable PPA:
40
41          http://launchpad.net/~team-xbmc/+archive/ppa
42
43 -----------------------------------------------------------------------------
44 3a. Use a single command to get all build dependencies
45 -----------------------------------------------------------------------------
46 [NOTICE] Supported on Ubuntu >= 11.10 (oneiric)
47
48 You can get all build dependencies used for building the packages on the PPA
49
50 Add the unstable and build-depends PPAs:
51 .0  $ sudo apt-get install python-software-properties software-properties-common
52 .1  $ sudo add-apt-repository ppa:team-xbmc/xbmc-nightly
53 .2  $ sudo add-apt-repository ppa:team-xbmc/xbmc-ppa-build-depends
54 .3  $ sudo apt-get update
55
56 Here is the magic command to get the build dependencies (used to compile the version on the PPA).
57     $ sudo apt-get build-dep xbmc
58
59 Optional: If you do not want XBMC to be installed via PPA, you can removed the PPAs again:
60     $ sudo add-apt-repository -r ppa:team-xbmc/xbmc-nightly
61     $ sudo add-apt-repository -r ppa:team-xbmc/xbmc-ppa-build-depends
62
63 Note: Do not use "aptitude" for the build-dep command. It doesn't resolve everything properly.
64       For developers and anyone else who compiles frequently it is recommended to use ccache
65     $ sudo apt-get install ccache
66
67 Tip: For those with multiple computers at home is to try out distcc
68     (fully unsupported from XBMC of course)
69     $ sudo apt-get install distcc
70
71 -----------------------------------------------------------------------------
72 3b. Alternative: Manual dependency installation
73 -----------------------------------------------------------------------------
74
75 For Ubuntu (all versions >= 7.04):
76
77     $ 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 libiso9660-dev libjasper-dev libjpeg-dev liblzo2-dev libmad0-dev libmicrohttpd-dev libmodplug-dev libmpeg2-4-dev libmpeg3-dev libmysqlclient-dev libnfs-dev libogg-dev libogg-dev libpcre3-dev libplist-dev libpng-dev libpulse-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 libxml2-dev libxmu-dev libxrandr-dev libxrender-dev libxslt1-dev libxt-dev libyajl-dev mesa-utils nasm pmount python-dev python-imaging python-sqlite swig unzip yasm zip zlib1g-dev
78
79 For >= 10.10:
80     $ sudo apt-get install autopoint libltdl-dev
81
82 On 8.10 and older versions, libcurl is outdated and thus XBMC will not compile properly.
83 In this case you will have to manually compile the latest version.
84     $ wget http://curl.sourceforge.net/download/curl-7.19.7.tar.gz
85     $ tar -xzf curl-7.19.7.tar.gz
86     $ cd curl-7.19.7
87     $ ./configure --disable-ipv6 --without-libidn --disable-ldap --prefix=/usr
88     $ make
89     $ sudo make install
90
91 For <= 12.04
92 XBMC needs a new version of taglib other than what is available at this time.
93 We supply a Makefile in lib/taglib to make it easy to install into /usr/local.
94     $ sudo apt-get remove libtag1-dev
95     $ make -C lib/taglib
96     $ sudo make -C lib/taglib install
97
98 or use prepackaged from the XBMC PPA.
99
100     $ sudo apt-get install libtag1-dev
101
102 Unless you are proficient with how Linux libraries and versions work, do not
103 try to provide it yourself, as you will likely mess up for other programs.
104
105 -----------------------------------------------------------------------------
106 4. How to compile
107 -----------------------------------------------------------------------------
108 See README.linux
109
110 -----------------------------------------------------------------------------
111 4.1. Test Suite
112 -----------------------------------------------------------------------------
113 See README.linux
114
115 -----------------------------------------------------------------------------
116 5. Uninstalling
117 -----------------------------------------------------------------------------
118 Remove any PPA installed XBMC.
119     $ sudo apt-get remove xbmc*
120
121 See README.linux/Uninstalling for removing compiled versions of XBMC.
122 EOF