VDR Installation

Aus VDR Wiki
(Unterschied zwischen Versionen)
Wechseln zu: Navigation, Suche
(Links)
K (Arch-Linux)
 
(95 dazwischenliegende Versionen von 41 Benutzern werden nicht angezeigt)
Zeile 1: Zeile 1:
==Voraussetzungen==
+
==Beschreibung==
{{Box Hinweis|
+
Die Variable '''$SOURCEDIR''' enthält den Pfad zum Verzeichnis, in dem die [[Quelltext|Quellen]] entpackt werden sollen. Übliche Verzeichnisse sind '''/usr/local/src''', /usr/src und das home-Verzeichnis des jeweiligen Nutzers.
+
}}
+
  
Um [[VDR]] installieren zu können, muss der [[DVB]]-Treiber in einem Verzeichnis parallel zu VDR liegen.
+
==Softwareanforderungen==
 +
* Entwicklungsumgebung (make, gcc..)
 +
* [[DVB Installation|DVB Treiber]].
 +
* [http://www.ijg.org Libjpeg]
 +
* [ftp://ftp.kernel.org/pub/linux/libs/security/linux-privs/kernel-2.4/libcap-1.10.tar.bz2 libcap] >=  1.10
 +
* [http://fontconfig.org/release/fontconfig-2.4.2.tar.gz fontconfig] >= 2.4.2 / freetype
 +
* gettext
 +
* optional [[skincurses-plugin]], welches VDR beinhaltet, benötigt zusätzlich '''ncurses'''
  
<pre>
+
Bei den meisten [[Distribution]]en lassen sich die obigen Abhängigkeiten per weiter unteren angeführten Paketmanager installieren, falls dies nicht der Fall ist, sollten die Paket aus den jeweiligen Quellpaketen installiert werden.  
$SOURCEDIR/DVB
+
$SOURCEDIR/VDR
+
</pre>
+
 
+
Für die original DVB Kernel 2.6 Treiber (vorausgesetzt diese befinden sich in '''/usr/src/linux''').
+
  
 +
===Source Installation der Softwareanforderungen===
 +
{{Box Hinweis|
 +
Die Variable '''$SOURCEDIR''' enthält den Pfad zum Verzeichnis, in dem die [[Quelltext|Quellen]] entpackt werden sollen. Übliche Verzeichnisse sind '''/usr/local/src''', '''/usr/src''' und das '''HOME'''-Verzeichnis des jeweiligen Nutzers.
 
<pre>
 
<pre>
ln -s /usr/src/linux $SOURCEDIR/DVB
+
export SOURCEDIR='/usr/local/src'
 
</pre>
 
</pre>
 
+
}}
Bei den neueren Drivern (1.1.1) ist ähnlich zu verfahren.
+
====libjpeg====
 
+
<pre>
+
cd $SOURCEDIR/DVB
+
ln -s linux/include include
+
</pre>
+
 
+
Für weiteres zum DVB-Treiber s.h. [[DVB Installation]].
+
 
+
Außerdem muss die JPEG-Library installiert sein. Bei einer normalen Distribution sollte dies bereits der Fall sein, falls nicht.
+
 
+
 
<pre>
 
<pre>
 
cd $SOURCEDIR
 
cd $SOURCEDIR
Zeile 37: Zeile 29:
 
ldconfig
 
ldconfig
 
</pre>
 
</pre>
 +
====libcap====
 +
<pre>
 +
tar xfj libcap-1.10.tar.bz2
 +
cd libcap-1.10
 +
make
 +
make install
 +
</pre>
 +
====fontconfig====
 +
<pre>
 +
tar xfz fontconfig-2.4.2.tar.gz
 +
cd fontconfig-2.4.2
 +
./configure --prefix=/usr/local
 +
make
 +
make install
 +
ldconfig
 +
</pre>
 +
 +
===Distributionen spezifische Installation der Softwareanforderungen===
 +
Die Installation von kompilierten Binärpaket per Paketmanager empfiehlt sich für die jeweilige [[Distribution]].
 +
====[[Arch-Linux]]====
 +
pacman -S base-devel libjpeg-turbo
 +
 +
====[[Crux]]====
 +
prt-get depinst libcap libjpeg
 +
 +
====[[Debian]]====
 +
apt-get install build-essential libjpeg62-dev libcap-dev libfontconfig1-dev gettext
  
{{Box Warnung|
+
====[[Gentoo]]====
VDR funktioniert momentan nicht mit NPTL ("''Native Posix Thread Library''"). Wenn also ein Linux 2.6.x oder ein 2.4.x Kernel mit NPTL-[[Patches]] zum Einsatz kommt, sollte ein
+
emerge jpeg libcap
  
<nowiki>export LD_ASSUME_KERNEL=2.4.1</nowiki>
+
====[[SuSE]]====
 +
yast -i libjpeg-devel libcap-devel
  
vor dem Start des VDR gesetzt werden.
+
==== openSUSE>= 10.1 ====
  
Ein weiteres Problem bereitet UTF-8 und sollte deshalb dringend durch iso8859-1 oder ähnliches ersetzt werden. Je nach Distribution können die entsprechenden Umgebungsvariablen an unterschiedlichen Stellen liegen, einfach nach LANG und LC_CTYPE suchen und entsprechend setzen
+
''libcap-devel'' nur in der FTP version enthalten. Um es installieren zu können, muß ein openSUSE Spiegel Server als Installationsquelle eingebunden werden
  
<nowiki>export LANG=de_DE.iso8859-1</nowiki>
+
http://de.opensuse.org/Spiegelserver_der_stabilen_Version#Deutschland
<nowiki>export LC_CTYPE=de_DE.iso8859-1</nowiki>
+
  
de_DE.euro sollte auch funktionieren
+
Im YaST geht das so:
}}
+
  
Zunächst wird eine aktuelle Version von [[VDR]] benötigt ([ftp://ftp.cadsoft.de/vdr/Developer [1]], [http://www.cadsoft.de/vdr [2]]). Das Versionschema ist das gleiche wie beim Linux-Kernel: ist die zweite Zahl ungerade, handelt es sich um eine Entwickler-Version (z.B. v1.3.x), ist sie gerade, um eine stabile Version für den normalen Benutzer (z.B. 1.2.x).
+
yast starten:
 +
 
 +
Software --> Installationsquelle wechseln --> Hinzufügren --> FTP... --> Weiter --> Servername --> z.B. ftp.gwdg.de -->  Verzeichnis auf dem Server --> z.B. pub/opensuse/distribution/10.2/repo/oss --> Weiter --> (Lizenzbedingungen) Ja --> Weiter --> Beenden
 +
 
 +
==Installation==
 +
Um [[VDR]] installieren zu können, muss der [[DVB]]-Treiber installiert sein, die zugehörigen Dateien werden innerhalb des Kernelheaders erwartet. Für weiteres zum DVB-Treiber s.h. [[DVB Installation]].
 +
 
 +
Zum [[VDR]] selber wird zunächst die aktuelle Version benötigt (ftp://ftp.tvdr.de/vdr/vdr-current.tar.bz2).
 +
 
 +
{{Box Hinweis|
 +
Das Versionschema ist das gleiche wie beim Linux-Kernel, ist die zweite Zahl ungerade, handelt es sich um eine Entwickler-Version (z.B. v'''2.1.x'''), ist sie gerade, um eine stabile Version für den normalen Benutzer (z.B. '''2.0.x''').
 +
}}
  
 
Für welche Version man sich entscheidet, bleibt jedem selbst überlassen.
 
Für welche Version man sich entscheidet, bleibt jedem selbst überlassen.
  
==Entpacken==
+
Nun wird das eben heruntergeladene Archiv entpackt und in das Quellcodeverzeichnis gewechselt. Zum Kompilieren reicht der '''make''' Befehl. Damit wird VDR mit Standardeinstellungen und Unterstützung für die Tastatur übersetzt.
Nun wird das eben heruntergeladene Archiv entpackt und ein symbolischer Link nach VDR gesetzt
+
  
 
<pre>
 
<pre>
 
cd $SOURCEDIR
 
cd $SOURCEDIR
 
tar jxvf /path/to/vdr-<VERSION>.tar.bz2
 
tar jxvf /path/to/vdr-<VERSION>.tar.bz2
ln -s vdr-<VERSION> VDR
+
cd vdr-<VERSION>
cd VDR
+
make
 
</pre>
 
</pre>
  
==Kompilieren==
+
Unter dem älteren VDR 1.x.x gibt es noch folgende Parameter, Ab VDR 1.6.x können diese Einstellungen per Kommandozeilenparameter ohne rekompilieren verändert werden.
Zum kompilieren reicht ein einfaches
+
<pre>make</pre>
+
Damit wird VDR mit Standardeinstellungen und Unterstützung für die Tastatur übersetzt.
+
 
+
Folgende Parameter können make übergeben werden, um VDR anzupassen.
+
 
{|
 
{|
 
|bgcolor=#efefef|REMOTE=[[RCU]]
 
|bgcolor=#efefef|REMOTE=[[RCU]]
| ''"Remote Control Unit"'', ein speziell für VDR entwickelter Infrarot-Empfänger (s.h. [http://www.cadsoft.de/vdr/remote.htm [3]])
+
| '''R'''emote '''C'''ontrol '''U'''nit, ein speziell für VDR entwickelter Infrarot-Empfänger
 
|-
 
|-
 
|bgcolor=#efefef|REMOTE=[[LIRC]]
 
|bgcolor=#efefef|REMOTE=[[LIRC]]
| ''"Linux Infrared Remote Control"''. Infrarot-Empfänger für Linux (s.h. [http://www.lirc.org [4]])
+
| '''L'''inux '''I'''nfrared '''R'''emote '''C'''ontrol. Infrarot-Empfänger für Linux
|-
+
|
 
|bgcolor=#efefef|VFAT=1
 
|bgcolor=#efefef|VFAT=1
 
| Wenn das Video-Verzeichnis auf einer VFAT Partition liegt, oder mittels Samba freigegeben werden soll
 
| Wenn das Video-Verzeichnis auf einer VFAT Partition liegt, oder mittels Samba freigegeben werden soll
Zeile 87: Zeile 110:
 
|}
 
|}
  
Der make-Befehl könnte also folgendermaßen aussehen
+
Wer öfters übersetzt, der sollte anhand der Vorlage '''[[Make.config.template]]''' die Datei '''Make.config''' erstellen.
<pre>make VFAT=1 REMOTE=LIRC</pre>
+
Der Buildprozess übernimmt dann die in '''Make.config''' gewählten Vorgaben.
Möchte man VDR + Plugins in einem Rutsch übersetzen
+
Tipp: In '''Make.config''' können auch Vorgaben für das Kompilieren der Plugins hinterlegt werden.
<pre>make VFAT=1 REMOTE=LIRC all plugins</pre>
+
<pre>
Wer öfters übersetzt, der sollte das Template '''[[Make.config.template]]''' nutzen:
+
cp Make.config.template Make.config
<pre>cp Make.config.template Make.config
+
nano Make.config
mcedit Make.config
+
 
...
 
...
REMOTE=LIRC VFAT=1
+
NO_KBD=1
...</pre>
+
VFAT=1
Von nun an langt ein einfaches:
+
<pre>make</pre>
+
Die anderen Optionen werden aus '''Make.config''' übernommen.
+
==Installation==
+
===Standard===
+
Nachdem VDR nun fertig übersetzt ist, kann er installiert werden
+
  
<pre>
+
PREFIX  = /usr/local/
make install
+
BINDIR  = $(PREFIX)/bin
 +
MANDIR  = $(PREFIX)/man
 +
 
 +
VIDEODIR = /video
 +
...
 
</pre>
 
</pre>
  
Das installiert VDR, legt das Video-Verzeichnis an und kopiert die Konfigurationsdateien dorthin.
+
Nun können die erstellten Binärdateien installiert werden. Dadurch wird das für Aufnahmen notwendige [[VDR_Optionen#video|$VIDEODIR]] erstellt.
  
===Benutzerdefiniert===
+
make install
Zuerst werden ein paar notwendige Verzeichnisse angelegt
+
  
<pre>
+
Man kann aber auch das [[VDR Optionen#video|$VIDEODIR]] und das Konfigurations-Verzeichnis trennen. Das hat den Vorteil, dass verschiedene Versionen von [[VDR]] installiert werden können.
mkdir -p /video \
+
        /etc/vdr \
+
        /usr/lib/vdr
+
</pre>
+
  
Diese Verzeichnisse sind für die Aufnahmen, für das [[EPG]], für die Konfigurationsdateien und für die [[Plugins]]. Die Pfade können natürlich nach den eigenen Wünschen/Anforderungen angepasst oder zusammenlegen werden. Besonders das vom Video-Verzeichnis getrennte Konfigurations-Verzeichnis hat aber den Vorteil, dass verschiedene Versionen von [[VDR]] installiert werden können, mit jeweils eigenen Konfigurationen.
+
==Konfiguration==
 +
===Aufruf===
 +
Beim Starten werden VDR die entsprechenden Pfade wie folgt bekannt gemacht:
  
Nun müssen nur noch die notwendigen Dateien kopiert werden.
+
vdr --video=[[VDR Optionen#video|$VIDEODIR]] \
 +
    --epgfile=[[Struktur|$VDRCONFIG]]/[[epg.data]] \
 +
    --config=[[VDR Optionen#config|$VDRCONFIG]] \
 +
    --lib=[[Struktur|$SOURCEDIR]]/VDR/PLUGINS/lib \
 +
    --shutdown=[[Struktur|$PATH]]/[[shutdown.sh]] \
 +
    --record=[[Struktur|$PATH]]/[[rwrapper.sh]] \
 +
    --[[VDR Optionen|weitere Parameter]]
  
<pre>
+
===Netzwerk===
cp vdr /usr/local/bin
+
VDR bietet die Möglichkeit, über das Netzwerk mit Hilfe des [[SVDRP]]-Protokolls gesteuert zu werden. In der Konfigurationsdatei [[svdrphosts.conf]] wird festgelegt, welche Rechner oder Netzwerke auf VDR zugreifen dürfen. In der Standardeinstellung ist nur der Rechner auf dem VDR läuft dazu berechtigt.
cp *.conf /etc/vdr
+
cp PLUGINS/lib/* /usr/lib/vdr
+
</pre>
+
  
Evt. noch das [[svdrpsend.pl]] Script in den PATH kopieren, da einige Programme/[[Plugins]] es nutzen, z.B. [[vdrconvert-plugin]]/[[vdrrip-plugin]].
+
===Sonstiges===
 +
[[runvdr|Runvdr]] ist ein Startscript, das nicht nur VDR und den DVB-Treiber startet, es sorgt bei einem Absturz auch dafür, dass beides neu gestartet wird.
 +
Sollte der VDR oder ein Plugin unerwartet abstürzen kann die Ursache mit [[gdb]] analysiert werden, und damit dem Entwickler hilfreiche Informationen zur Verfügung gestellt werden, dieses Problem zu beheben.
  
<pre>
+
===Bekannte Probleme===
cp svdrpsend.pl /usr/local/bin
+
Bei Debian (Etch) mit Kernel 2.6.16-2-686 (derzeit aktuell) verursacht das Kernelmodul ''stradis'' ein Problem mit dem DVB Treiber.
</pre>
+
  
Wenn auch die Manual-Seiten benötigt werden.
+
Workaround:
  
 
<pre>
 
<pre>
gzip -c vdr.1 > /usr/man/man1/vdr.1.gz
+
rmmod stradis
gzip -c vdr.5 > /usr/man/man5/vdr.5.gz
+
</pre>
+
  
==Konfiguration==
+
echo blacklist stradis >> /etc/modprobe.d/blacklist
===Aufruf===
+
Beim starten werden VDR die entsprechenden Pfade bekannt gemacht.
+
 
+
<pre>
+
vdr --video=/video \
+
    --epgfile=/etc/vdr/epg.data \
+
    --config=/etc/vdr \
+
    --lib=/usr/lib/vdr \
+
    --weitere Parameter
+
 
</pre>
 
</pre>
  
===Netzwerk===
 
VDR bietet die Möglichkeit über das Netzwerk mit Hilfe des [[svdrp|SVDRP]]-Protokolls gesteuert zu werden. In der Konfigurationsdatei [[svdrphosts.conf]] wird festgelegt, welche Rechner oder Netzwerke auf VDR zugreifen dürfen. In der Standardeinstellung ist nur der Rechner auf dem VDR läuft dazu berechtigt.
 
  
===Sonstiges===
+
==Links==
[[runvdr|Runvdr]] ist ein Startscript, dass nicht nur VDR und den DVB-Treiber startet, es sorgt bei einem Absturz auch dafür, dass beides neu gestartet wird.
+
# [http://www.tvdr.de/ VDR Homepage]
 +
# [ftp://ftp.tvdr.de/vdr VDR Download-Verzeichnis]
  
==Links==
+
[[Kategorie:VDR]]
{|
+
[[Kategorie:Installationsanleitungen]]
| [1]
+
{{i18n|VDR Installation}}
| http://www.cadsoft.de/vdr
+
| VDR Homepage
+
|-
+
| [2]
+
| ftp://ftp.cadsoft.de/vdr/Developer
+
| VDR Download-Verzeichnis
+
|-
+
| [3]
+
| http://www.cadsoft.de/vdr/remote.htm
+
| Remote Control Unit für VDR
+
|-
+
| [4]
+
| http://www.lirc.org
+
| LIRC Homepage
+
|-
+
| [5]
+
| http://www.ijg.org
+
| Libjpeg
+
|}
+
[[Kategorie:Software]]
+

Aktuelle Version vom 9. August 2013, 19:22 Uhr

Inhaltsverzeichnis

[Bearbeiten] Beschreibung

[Bearbeiten] Softwareanforderungen

Bei den meisten Distributionen lassen sich die obigen Abhängigkeiten per weiter unteren angeführten Paketmanager installieren, falls dies nicht der Fall ist, sollten die Paket aus den jeweiligen Quellpaketen installiert werden.

[Bearbeiten] Source Installation der Softwareanforderungen

Hinweis
Hinweis

Die Variable $SOURCEDIR enthält den Pfad zum Verzeichnis, in dem die Quellen entpackt werden sollen. Übliche Verzeichnisse sind /usr/local/src, /usr/src und das HOME-Verzeichnis des jeweiligen Nutzers.

export SOURCEDIR='/usr/local/src'


[Bearbeiten] libjpeg

cd $SOURCEDIR
tar xvzf jpegsrc.<VERSION>.tar.gz
cd jpeg-<VERSION>
./configure --prefix=/usr/local
make
make install
ldconfig

[Bearbeiten] libcap

tar xfj libcap-1.10.tar.bz2
cd libcap-1.10
make
make install

[Bearbeiten] fontconfig

tar xfz fontconfig-2.4.2.tar.gz
cd fontconfig-2.4.2
./configure --prefix=/usr/local
make
make install
ldconfig

[Bearbeiten] Distributionen spezifische Installation der Softwareanforderungen

Die Installation von kompilierten Binärpaket per Paketmanager empfiehlt sich für die jeweilige Distribution.

[Bearbeiten] Arch-Linux

pacman -S base-devel libjpeg-turbo

[Bearbeiten] Crux

prt-get depinst libcap libjpeg

[Bearbeiten] Debian

apt-get install build-essential libjpeg62-dev libcap-dev libfontconfig1-dev gettext

[Bearbeiten] Gentoo

emerge jpeg libcap

[Bearbeiten] SuSE

yast -i libjpeg-devel libcap-devel

[Bearbeiten] openSUSE>= 10.1

libcap-devel nur in der FTP version enthalten. Um es installieren zu können, muß ein openSUSE Spiegel Server als Installationsquelle eingebunden werden

http://de.opensuse.org/Spiegelserver_der_stabilen_Version#Deutschland

Im YaST geht das so:

yast starten:

Software --> Installationsquelle wechseln --> Hinzufügren --> FTP... --> Weiter --> Servername --> z.B. ftp.gwdg.de --> Verzeichnis auf dem Server --> z.B. pub/opensuse/distribution/10.2/repo/oss --> Weiter --> (Lizenzbedingungen) Ja --> Weiter --> Beenden

[Bearbeiten] Installation

Um VDR installieren zu können, muss der DVB-Treiber installiert sein, die zugehörigen Dateien werden innerhalb des Kernelheaders erwartet. Für weiteres zum DVB-Treiber s.h. DVB Installation.

Zum VDR selber wird zunächst die aktuelle Version benötigt (ftp://ftp.tvdr.de/vdr/vdr-current.tar.bz2).

Hinweis
Hinweis

Das Versionschema ist das gleiche wie beim Linux-Kernel, ist die zweite Zahl ungerade, handelt es sich um eine Entwickler-Version (z.B. v2.1.x), ist sie gerade, um eine stabile Version für den normalen Benutzer (z.B. 2.0.x).


Für welche Version man sich entscheidet, bleibt jedem selbst überlassen.

Nun wird das eben heruntergeladene Archiv entpackt und in das Quellcodeverzeichnis gewechselt. Zum Kompilieren reicht der make Befehl. Damit wird VDR mit Standardeinstellungen und Unterstützung für die Tastatur übersetzt.

cd $SOURCEDIR
tar jxvf /path/to/vdr-<VERSION>.tar.bz2
cd vdr-<VERSION>
make

Unter dem älteren VDR 1.x.x gibt es noch folgende Parameter, Ab VDR 1.6.x können diese Einstellungen per Kommandozeilenparameter ohne rekompilieren verändert werden.

REMOTE=RCU Remote Control Unit, ein speziell für VDR entwickelter Infrarot-Empfänger
REMOTE=LIRC Linux Infrared Remote Control. Infrarot-Empfänger für Linux VFAT=1 Wenn das Video-Verzeichnis auf einer VFAT Partition liegt, oder mittels Samba freigegeben werden soll
NO_KBD=1 Deaktiviert die Tastatursteuerung

Wer öfters übersetzt, der sollte anhand der Vorlage Make.config.template die Datei Make.config erstellen. Der Buildprozess übernimmt dann die in Make.config gewählten Vorgaben. Tipp: In Make.config können auch Vorgaben für das Kompilieren der Plugins hinterlegt werden.

cp Make.config.template Make.config
nano Make.config
...
NO_KBD=1
VFAT=1

PREFIX   = /usr/local/
BINDIR   = $(PREFIX)/bin
MANDIR   = $(PREFIX)/man

VIDEODIR = /video
...

Nun können die erstellten Binärdateien installiert werden. Dadurch wird das für Aufnahmen notwendige $VIDEODIR erstellt.

make install

Man kann aber auch das $VIDEODIR und das Konfigurations-Verzeichnis trennen. Das hat den Vorteil, dass verschiedene Versionen von VDR installiert werden können.

[Bearbeiten] Konfiguration

[Bearbeiten] Aufruf

Beim Starten werden VDR die entsprechenden Pfade wie folgt bekannt gemacht:

vdr --video=$VIDEODIR \
    --epgfile=$VDRCONFIG/epg.data \
    --config=$VDRCONFIG \
    --lib=$SOURCEDIR/VDR/PLUGINS/lib \
    --shutdown=$PATH/shutdown.sh \
    --record=$PATH/rwrapper.sh \
    --weitere Parameter

[Bearbeiten] Netzwerk

VDR bietet die Möglichkeit, über das Netzwerk mit Hilfe des SVDRP-Protokolls gesteuert zu werden. In der Konfigurationsdatei svdrphosts.conf wird festgelegt, welche Rechner oder Netzwerke auf VDR zugreifen dürfen. In der Standardeinstellung ist nur der Rechner auf dem VDR läuft dazu berechtigt.

[Bearbeiten] Sonstiges

Runvdr ist ein Startscript, das nicht nur VDR und den DVB-Treiber startet, es sorgt bei einem Absturz auch dafür, dass beides neu gestartet wird. Sollte der VDR oder ein Plugin unerwartet abstürzen kann die Ursache mit gdb analysiert werden, und damit dem Entwickler hilfreiche Informationen zur Verfügung gestellt werden, dieses Problem zu beheben.

[Bearbeiten] Bekannte Probleme

Bei Debian (Etch) mit Kernel 2.6.16-2-686 (derzeit aktuell) verursacht das Kernelmodul stradis ein Problem mit dem DVB Treiber.

Workaround:

rmmod stradis

echo blacklist stradis >> /etc/modprobe.d/blacklist


[Bearbeiten] Links

  1. VDR Homepage
  2. VDR Download-Verzeichnis
In anderen Sprachen