VDR Installation

Aus VDR Wiki
(Unterschied zwischen Versionen)
Wechseln zu: Navigation, Suche
K (Links)
(Aktualisiert)
Zeile 3: Zeile 3:
 
==Softwareanforderungen==
 
==Softwareanforderungen==
 
* Entwicklungsumgebung (make, gcc..)
 
* Entwicklungsumgebung (make, gcc..)
* DVB Quellen
+
* [[DVB Installation|DVB Treiber]].
* libjpeg
+
* [http://www.ijg.org Libjpeg]
* libcap '''vdr >= 1.3.38'''
+
* [ftp://ftp.kernel.org/pub/linux/libs/security/linux-privs/kernel-2.4/libcap-1.10.tar.bz2 libcap] >= 1.10
* fontconfig >= 2.4.2 / freetype ab '''vdr 1.5.x'''
+
* [http://fontconfig.org/release/fontconfig-2.4.2.tar.gz fontconfig] >= 2.4.2 / freetype
* gettext ab '''vdr 1.5.?'''
+
* gettext
* [[skincurses-plugin]], welches VDR beinhaltet, benötigt zusätzlich '''ncurses'''
+
* optional [[skincurses-plugin]], welches VDR beinhaltet, benötigt zusätzlich '''ncurses'''
  
==Abhängigkeiten auflösen==
+
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.  
Die JPEG-Library muß installiert sein, für '''vdr >= 1.3.38''' wird zusätzlich [ftp://ftp.kernel.org/pub/linux/libs/security/linux-privs/kernel-2.4/libcap-1.10.tar.bz2 libcap] benötigt. Ab '''vdr 1.5.x''' wird auch noch eine aktuelle Version von [http://fontconfig.org/release/fontconfig-2.4.2.tar.gz fontconfig] benötigt.
+
  
Bei den meisten [[Distributionen]] könnte dies bereits der Fall sein, falls nicht:
+
===Source Installation der Softwareanforderungen===
 
+
===Source===
+
 
{{Box Hinweis|
 
{{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.
 
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.
Zeile 22: Zeile 19:
 
</pre>
 
</pre>
 
}}
 
}}
 +
====libjpeg====
 
<pre>
 
<pre>
 
cd $SOURCEDIR
 
cd $SOURCEDIR
Zeile 31: Zeile 29:
 
ldconfig
 
ldconfig
 
</pre>
 
</pre>
 
+
====libcap====
für '''vdr >= 1.3.38''' wird [ftp://ftp.kernel.org/pub/linux/libs/security/linux-privs/kernel-2.4/libcap-1.10.tar.bz2 libcap] benötigt. Ein aktueller Patch ist unter [http://packages.qa.debian.org/libc/libcap.html http://packages.qa.debian.org/libc/libcap.html] abrufbar.
+
 
+
 
<pre>
 
<pre>
 
tar xfj libcap-1.10.tar.bz2
 
tar xfj libcap-1.10.tar.bz2
Zeile 40: Zeile 36:
 
make install
 
make install
 
</pre>
 
</pre>
Ab '''vdr 1.5.x''' wird [http://fontconfig.org/release/fontconfig-2.4.2.tar.gz fontconfig] benötigt.
+
====fontconfig====
 
<pre>
 
<pre>
 
tar xfz fontconfig-2.4.2.tar.gz
 
tar xfz fontconfig-2.4.2.tar.gz
Zeile 50: Zeile 46:
 
</pre>
 
</pre>
  
===[[Arch-Linux]]===
+
===Distributionen spezifische Installation der Softwareanforderungen===
 +
Die Installation von kompilierten Binärpaket per Paketmanager empfiehlt sich für die jeweilige [[Distributionen|Distribution]].
 +
====[[Arch-Linux]]====
 
  pacman -S libcap libjpeg
 
  pacman -S libcap libjpeg
  
===[[Crux]]===
+
====[[Crux]]====
 
  prt-get depinst libcap libjpeg
 
  prt-get depinst libcap libjpeg
  
===[[Debian]]===
+
====[[Debian]]====
  apt-get install libjpeg62-dev libcap-dev libfontconfig1-dev gettext
+
  apt-get install build-essential libjpeg62-dev libcap-dev libfontconfig1-dev gettext
  
===[[Gentoo]]===
+
====[[Gentoo]]====
 
  emerge jpeg libcap
 
  emerge jpeg libcap
  
===[[SuSE]]===
+
====[[SuSE]]====
 
  yast -i libjpeg-devel libcap-devel
 
  yast -i libjpeg-devel libcap-devel
  
Zeile 83: Zeile 81:
  
 
{{Box Hinweis|
 
{{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'''1.3.x'''), ist sie gerade, um eine stabile Version für den normalen Benutzer (z.B. '''1.4.x''').
+
Das Versionschema ist das gleiche wie beim Linux-Kernel, ist die zweite Zahl ungerade, handelt es sich um eine Entwickler-Version (z.B. v'''1.7.x'''), ist sie gerade, um eine stabile Version für den normalen Benutzer (z.B. '''1.6.x''').
 
}}
 
}}
  
 
Für welche Version man sich entscheidet, bleibt jedem selbst überlassen.
 
Für welche Version man sich entscheidet, bleibt jedem selbst überlassen.
  
Nun wird das eben heruntergeladene Archiv entpackt und in das Quellcodeverzeichnis gewechelt.
+
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.
  
 
<pre>
 
<pre>
Zeile 94: Zeile 92:
 
tar jxvf /path/to/vdr-<VERSION>.tar.bz2
 
tar jxvf /path/to/vdr-<VERSION>.tar.bz2
 
cd vdr-<VERSION>
 
cd vdr-<VERSION>
</pre>
 
 
Zum Kompilieren reicht ein einfaches
 
 
<pre>
 
 
make
 
make
 
</pre>
 
</pre>
  
Damit wird VDR mit Standardeinstellungen und Unterstützung für die Tastatur übersetzt.
+
Folgende Parameter können zusätzlich an make übergeben werden, um VDR anzupassen.
 
+
 
+
 
+
Folgende Parameter können make übergeben werden, um VDR anzupassen.
+
 
{|
 
{|
 
|bgcolor=#efefef|VFAT=1
 
|bgcolor=#efefef|VFAT=1
Zeile 199: Zeile 188:
 
===Sonstiges===
 
===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.
 
[[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 zubeheben.
+
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.
  
 
===Bekannte Probleme===
 
===Bekannte Probleme===
Zeile 216: Zeile 205:
 
# [http://www.tvdr.de/ VDR Homepage]
 
# [http://www.tvdr.de/ VDR Homepage]
 
# [ftp://ftp.tvdr.de/vdr VDR Download-Verzeichnis]
 
# [ftp://ftp.tvdr.de/vdr VDR Download-Verzeichnis]
# [http://www.tvdr.de/remote.htm Remote Control Unit für VDR]
 
 
# [http://www.lirc.org LIRC Homepage]
 
# [http://www.lirc.org LIRC Homepage]
# [http://www.ijg.org Libjpeg]
 
# [ftp://ftp.kernel.org/pub/linux/libs/security/linux-privs/kernel-2.4/libcap-1.10.tar.bz2 libcap]
 
# [http://fontconfig.org/release/fontconfig-2.4.2.tar.gz fontconfig]
 
  
 
[[Kategorie:VDR]]
 
[[Kategorie:VDR]]
 
[[Kategorie:Installationsanleitungen]]
 
[[Kategorie:Installationsanleitungen]]
 
{{i18n|VDR Installation}}
 
{{i18n|VDR Installation}}

Version vom 26. Februar 2010, 22:54 Uhr

Inhaltsverzeichnis

Beschreibung

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.

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'


libjpeg

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

libcap

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

fontconfig

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

Distributionen spezifische Installation der Softwareanforderungen

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

Arch-Linux

pacman -S libcap libjpeg

Crux

prt-get depinst libcap libjpeg

Debian

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

Gentoo

emerge jpeg libcap

SuSE

yast -i libjpeg-devel libcap-devel

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

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. v1.7.x), ist sie gerade, um eine stabile Version für den normalen Benutzer (z.B. 1.6.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

Folgende Parameter können zusätzlich an make übergeben werden, um VDR anzupassen.

VFAT=1 Wenn das Video-Verzeichnis auf einer VFAT Partition liegt, oder mittels Samba freigegeben werden soll
NO_KBD=1 Deaktiviert die Tastatursteuerung

unter dem älteren VDR 1.2.x gibt es noch folgende Parameter, Bei der VDR 1.4.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

Der make-Befehl könnte also folgendermaßen aussehen.

make VFAT=1

Möchte man VDR + Plugins in einem Rutsch übersetzen.

make VFAT=1 all plugins

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, mit jeweils eigenen Konfigurationen.

make install-conf VIDEODIR=$VDRCONFIG

Hinweise

Warnung
Warnung

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

export LD_ASSUME_KERNEL=2.4.1

vor dem Start des VDR gesetzt werden.

Update: Seit Version 1.3.27 scheint der vdr mit der NPTL klarzukommen.

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

export LANG=de_DE.iso8859-1
export LC_CTYPE=de_DE.iso8859-1

de_DE.euro sollte auch funktionieren.

Alternativ gibt es auch das Utf8-patch (bisher nur bis Version 1.4.4).


Konfiguration

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

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.

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.

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


Links

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