Project

General

Profile

Building » History » Version 31

saen acro, 2022-05-03 00:47

1 31 saen acro
{{toc}}
2
3 1 Adam Sutton
h1. Building
4
5 2 Adam Sutton
h2. Prerequisites
6
7 3 Adam Sutton
Before you can build Tvheadend you will need several packages installed on your development machine. 
8 2 Adam Sutton
9
The specific details will vary between distributions so we only cover the major ones here.
10
11
h3. Debian/Ubuntu
12
13
<pre>
14 7 Adam Sutton
$ sudo aptitude install build-essential git pkg-config libssl-dev bzip2 wget
15 2 Adam Sutton
</pre>
16
17
> Optional:
18
<pre>
19 26 Jaroslav Kysela
$ sudo aptitude install libavahi-client-dev zlib1g-dev libavcodec-dev libavutil-dev libavformat-dev libswscale-dev libavresample-dev
20 2 Adam Sutton
</pre>
21
22 17 Bob Lightfoot
h3. Redhat / Centos / Fedora
23 2 Adam Sutton
24 18 Bob Lightfoot
h4. Redhat/Centos/Fedora Build assumptions
25 13 Bob Lightfoot
26 12 Bob Lightfoot
<pre>
27 25 Jaroslav Kysela
Redhat/Centos/Fedora are a package managed OS and as such tvheadend should be installed from an rpm on a production system.
28
But you may run tvheadend from the build tree, of course.
29 12 Bob Lightfoot
</pre>
30 13 Bob Lightfoot
31 24 Bob Lightfoot
<pre>
32 25 Jaroslav Kysela
sudo yum groups install "C Development Tools and Libraries"
33
sudo yum install zlib-devel avahi-devel dbus-devel openssl-devel python
34 12 Bob Lightfoot
</pre>
35 2 Adam Sutton
36
h3. Gentoo
37
38
TODO: this needs adding
39
40 27 Anders Gustafsson
h3. Open SuSE
41
42
You need to install:
43
Install:
44
git
45
make
46
gcc
47
dvbv-devel
48
gettext-toools
49
libopenssl-devel
50
libavahi-devel
51
liburiparser-devel
52
packman-essentials
53
packman-multimedia
54
55
56
57
58 2 Adam Sutton
h2. Get Source
59
60
Next you must obtain the source code, this is hosted on "github":https://github.com/tvheadend/tvheadend.
61
62
To clone the repository simple run the command:
63
64
<pre>
65
$ git clone https://github.com/tvheadend/tvheadend.git
66
</pre>
67
68
h2. Configuring
69
70
TVHeadend comes with a configuration script that allows you to enable/disable optional components and set install paths, etc.
71
72
Most people will be fine with the defaults and can run:
73
74
<pre>
75
$ ./configure
76
</pre>
77
78
However for more advanced options, please run the following:
79
80
<pre>
81
$ ./configure --help
82
</pre>
83
84
And then re-run configure with the required options, i.e.:
85
86
<pre>
87 10 John Törnblom
$ ./configure --disable-dvbscan
88 2 Adam Sutton
</pre>
89
90 28 Anders Gustafsson
For more information about Tvheadend configuration options please see [[ConfigurationOptions|here]]
91
92 2 Adam Sutton
h2. Compiling
93
94 3 Adam Sutton
To compile Tvheadend run:
95 2 Adam Sutton
96
<pre>
97
$ make
98
</pre>
99
100
h2. Installing
101
102 3 Adam Sutton
It is possible to install Tvheadend using make, based on the ./configure options, by running:
103 2 Adam Sutton
104
<pre>
105
$ sudo make install
106
</pre>
107
108 11 Adam Sutton
However it's recommend that you run from the build directory for development/testing (see [[Development]]):
109 2 Adam Sutton
110
<pre>
111
$ ./build.linux/tvheadend
112
</pre>
113
114 4 Adam Sutton
NOTE: its VERY important you run test builds from git root, so command should look similar to above.
115
116 3 Adam Sutton
And that you build a [[Packaging|package]] if you wish to install Tvheadend permanently and hook into the system start scripts etc.
117 2 Adam Sutton
118
Use of make install is not very traceable and so removal can sometimes be painful, and it might overwrite an existing installation.
119
120 29 Anders Gustafsson
NOTE: The "prefix" ie where to put the tvheadend executable is a configurable option. If make install appears to not work (as in: i still get the old version) check:
121
/usr/local/bin/
122
/usr/bin/
123
124
In case you are referencing the wrong executable. A "sudo find / -name tvheadend" is a good way to find stray copies.
125
126 2 Adam Sutton
h2. Packaging
127
128 3 Adam Sutton
For more information about packaging Tvheadend please see [[Packaging|here]]
129 2 Adam Sutton
130
h2. Reporting Problems
131
132 3 Adam Sutton
If you have problems with a custom compiled version of Tvheadend its important that any issue reports include details of the specific version of source you used. For more details please see [[bugreporting|here]].
133 30 saen acro
134
h2. If you have other problems
135
136
Visit our forum thread "here":https://tvheadend.org/boards/4/topics/24116