|
|
VDR 1.4 + SC - Howto zum selber bauen der Debian Pakete |
TheTom
Member
Dabei seit: 21.05.2006
Beiträge: 624
|
|
VDR 1.4 + SC - Howto zum selber bauen der Debian Pakete |
|
So Leute, nachdem sich für Etch-Basierende Systeme ein paar Sachen
geändert haben, hab ich mich hin gesetzt und mein altes HowTo nochmal
neu gemacht und dabei auch ein paar Verbesserungen eingebaut.
Dann fang ich mal an:
Inhalt:
1. Vorbereitungen
2. VDR Kompilieren
3. SC Kompilieren
4. Sonnstige Plugins Kompilieren
5. Tips und Tricks
6. History
1. Vorbereitungen
Um den VDR mit der Softcam Funktionalität auszustatten, müssen wir diverse Dinge an unserem System verändern.
Zuerst installieren wir ein paar benötigte Pakete
code: |
1:
|
apt-get install build-essential dpkg-dev devscripts expect fakeroot wget libssl-dev gettext dpatch |
|
Dann passen wir unsere Datei /etc/apt/sources.list an. Diese sollte für
Debian Etch basierende Systeme (darunter fällt auch der ct'VDR 6) wie
folgt aussehen:
code: |
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
|
# Offizielle Debian Etch Pakete
deb http://ftp.de.debian.org/debian etch main contrib non-free
deb-src http://ftp.de.debian.org/debian/ etch main contrib non-free
# Offizielle Debian Etch Sicherheitsupdates
deb http://security.debian.org/ etch/updates main contrib non-free
# e-Tobi´s VDR Pakete - experimental / multipatch
deb http://e-tobi.net/vdr-experimental etch base backports addons vdr-multipatch
deb-src http://e-tobi.net/vdr-experimental etch base backports addons vdr-multipatch
# Debian Multimedia Repository
deb http://www.debian-multimedia.org etch main
deb-src http://www.debian-multimedia.org etch main
# Lokales VDR Repository
deb file:/usr/src/repository/myvdr binary/
deb-src file:/usr/src/repository/myvdr source/ |
|
Danach passen wir die Datei /etc/apt/preferences an, die vorgibt, aus welchem Repositorys die Pakete prioisiert werden.
code: |
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
|
Package: *
Pin: release o=Debian,a=stable
Pin-Priority: 300
Package: *
Pin: release o=Unofficial Multimedia Packages
Pin-Priority: 400
Package: *
Pin: release o=e-tobi.net
Pin-Priority: 500
Package: *
Pin: release o=myvdr
Pin-Priority: 510 |
|
So, da wir später auch andere Plugin´s kompilieren müssen legen wir uns
jetzt ein lokales Repository an, wo später unsere selbst kompilierten
Pakete landen und aus dem wir dann die Pakete per apt-get installieren
können.
code: |
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
|
mkdir -p /usr/src/repository/myvdr/binary/ && mkdir -p /usr/src/repository/myvdr/source/
cd /usr/src/repository/myvdr/
dpkg-scanpackages binary /dev/null | gzip -9c > binary/Packages.gz
dpkg-scansources source /dev/null | gzip -9c > source/Sources.gz
# Die nächsten Zeilen komplett kopieren und ausführen
cat << 'EOF' >> /usr/src/repository/myvdr/binary/Release
Archive: myvdr
Component: main, non-free, contrib
Label: My Unofficial ctVDR Debian Packages
Origin: myvdr
Architecture: binary-all, binary-i386
Description: unofficial packages from vdr
EOF |
|
Ok, als nächstes erstellen wir unser Build-Root (in dem wir später unsere Pakete kompilieren)
code: |
1:
2:
|
mkdir /usr/src/myvdr
cd /usr/src/myvdr |
|
Nun benötigen wir die neuesten diffs, mit denen wir später den vdr und das sc kompilieren
Dazu geht ihr bitte auf http://ptown-ne*works.ath.cx/file/filema...Cards%20Section und besorgt auch die aktuellsten.
Jetzt sollten wir noch ein apt-get update machen, da wir ja oben die sources.list angepasst haben!
2. VDR Kompilieren
Als erstes besorgen wir uns die zum Kompilieren benötigten Pakete:
code: |
1:
|
apt-get build-dep vdr |
|
Dann können wir in unserem Build-Root einen neuen Ordner erstellen, in
dem wir unsere ausgepackten vdr-src und diff kopieren/verschieben
code: |
1:
2:
3:
4:
|
mkdir /usr/src/myvdr/vdr-base/
cp -v /von/wo/auch/immer/vdr_1.4.* /usr/src/myvdr/vdr-base/
cd /usr/src/myvdr/vdr-base/
|
|
Jetzt Packen wir diese aus
code: |
1:
|
dpkg-source -x vdr_1.4.*.dsc |
|
dann solltet ihr die folgenden Dateien und Ordner in eurem vdr-base Ordner haben. (Versionsnummern können verschieden sein)
code: |
1:
2:
3:
4:
5:
6:
7:
8:
|
vdruser@vdr:/usr/src/myvdr/vdr-base$ ls -lah
insgesamt 1,2M
drwxr-sr-x 3 vdruser src 4,0K 2007-08-10 23:18 .
drwxr-sr-x 3 vdruser src 4,0K 2007-08-10 23:15 ..
drwxr-xr-x 6 vdruser vdruser 4,0K 2007-08-10 23:18 vdr-1.4.7
-rw-r--r-- 1 vdruser src 365K 2007-08-10 23:16 vdr_1.4.7-2ctvdr2+sc1.diff.gz
-rw-r--r-- 1 vdruser src 478 2007-08-10 23:16 vdr_1.4.7-2ctvdr2+sc1.dsc
-rw-r--r-- 1 vdruser src 774K 2007-08-10 23:16 vdr_1.4.7.orig.tar.gz |
|
In dem Ordner vdr-1.4.7 wird nun unser vdr gebaut.. also rein wechseln und mit dpkg-buildpackage bauen:
code: |
1:
2:
|
cd vdr-*
dpkg-buildpackage -rfakeroot -us -uc -sa |
|
Nachdem dieser Vorgang (der je nach Rechenleistung etwas dauern kann)
erfolgreich abgeschlossen ist, sollten eine ebene tiefer unsere Pakete
liegen.
code: |
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
|
vdruser@vdr:/usr/src/myvdr/vdr-base/vdr-1.4.7$ cd .. && ls -lah
insgesamt 3,5M
drwxr-sr-x 3 vdruser src 4,0K 2007-08-10 23:28 .
drwxr-sr-x 3 vdruser src 4,0K 2007-08-10 23:15 ..
drwxr-xr-x 8 vdruser vdruser 12K 2007-08-10 23:27 vdr-1.4.7
-rw-r--r-- 1 vdruser src 362K 2007-08-10 23:26 vdr_1.4.7-2ctvdr2+sc1.diff.gz
-rw-r--r-- 1 vdruser src 478 2007-08-10 23:26 vdr_1.4.7-2ctvdr2+sc1.dsc
-rw-r--r-- 1 vdruser src 1,7K 2007-08-10 23:28 vdr_1.4.7-2ctvdr2+sc1_i386.changes
-rw-r--r-- 1 vdruser src 765K 2007-08-10 23:28 vdr_1.4.7-2ctvdr2+sc1_i386.deb
-rw-r--r-- 1 vdruser src 774K 2007-08-10 23:16 vdr_1.4.7.orig.tar.gz
-rw-r--r-- 1 vdruser src 1,2M 2007-08-10 23:28 vdr-dbg_1.4.7-2ctvdr2+sc1_i386.deb
-rw-r--r-- 1 vdruser src 268K 2007-08-10 23:27 vdr-dev_1.4.7-2ctvdr2+sc1_all.deb
-rw-r--r-- 1 vdruser src 35K 2007-08-10 23:28 vdr-plugin-examples_1.4.7-2ctvdr2+sc1_i386.deb
-rw-r--r-- 1 vdruser src 31K 2007-08-10 23:28 vdr-plugin-sky_1.4.7-2ctvdr2+sc1_i386.deb
|
|
Diese Verschieben wir nun in unser zuvor angelegtes Repository und
updaten unsere Inhaltverzeichnisse um später mit apt-get installieren
zu können:
code: |
1:
2:
3:
|
mv -v *.deb *.changes /usr/src/repository/myvdr/binary/
cp -v vdr_1.4* /usr/src/repository/myvdr/source/
cd /usr/src/repository/myvdr && dpkg-scanpackages binary /dev/null | gzip -9c > binary/Packages.gz && dpkg-scansources source /dev/null | gzip -9c > source/Sources.gz |
|
So, vdr ist fertig.. also nun als root das vdr-dev Paket installieren,
damit wir unsere Plugins kompilieren können. Dabei ist darauf zu
achten, dass dieses Paket nun lokal bezogen wird. Und so können wir das
nun Prüfen:
code: |
1:
2:
|
apt-get update
apt-cache policy vdr-dev |
|
Die Priorität unseres neuen Pakets sollte nun höher sein als alle anderen
code: |
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
|
apt-get update
apt-cache policy vdr-dev
vdr-dev:
Installiert:(keine)
Mögliche Pakete:1.4.7-2ctvdr2+sc1
Versions-Tabelle:
1.4.7-2ctvdr2+sc1 0
510 file: binary/ Packages
1.4.7-2ctvdr2 0
500 http://e-tobi.net etch/vdr-multipatch Packages
1.4.4-1 0
300 http://ftp.debian.org etch/main Packages |
|
Wenn das klappt, dann können wir installieren
code: |
1:
|
apt-get install vdr-dev |
|
3. SC Kompilieren
So, nun ist das Softcam Plugin dran, welches ähnlich erstellt wird wie der vdr, deswegen erspare ich mir hier die Erläuterungen.
code: |
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
|
mkdir /usr/src/myvdr/_vdr-plugin-sc/
cp -v /von/wo/auch/immer/vdr-plugin-sc_0.8.* /usr/src/myvdr/_vdr-plugin-sc/
cd /usr/src/myvdr/_vdr-plugin-sc/
dpkg-source -x vdr-plugin-sc_*.dsc
cd vdr-plugin-sc-*
dpkg-buildpackage -rfakeroot -us -uc -sa
cd ..
mv -v *.deb *.changes /usr/src/repository/myvdr/binary/
cp -v vdr-plugin-sc_* /usr/src/repository/myvdr/source/
cd /usr/src/repository/myvdr && dpkg-scanpackages binary /dev/null | gzip -9c > binary/Packages.gz && dpkg-scansources source /dev/null | gzip -9c > source/Sources.gz
|
|
Schon sollte auch dieser Schritt erledigt sein
und wir können wieder als root das plugin per apt-get installieren (vorher apt-get update machen!).
4. Sonnstige Plugins Kompilieren
Da wir den VDR mit den Softcam Patches erweitert haben, müssen wir auch
unsere anderen Plugins neu kompilieren. Dazu habe ich ein Script
geschrieben, dass diese Aufgabe für uns erledigt. Erstellt euch also
eine neue Datei mit dem folgendem Inhalt und macht diese Ausführbar
(chmod +x DATEINAME).
code: |
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
31:
32:
33:
34:
35:
36:
37:
38:
39:
40:
41:
42:
43:
44:
45:
46:
47:
48:
49:
50:
51:
52:
53:
54:
55:
56:
57:
58:
59:
60:
61:
62:
63:
64:
65:
66:
67:
68:
69:
70:
71:
72:
73:
74:
75:
76:
77:
78:
79:
80:
81:
82:
83:
84:
85:
86:
87:
88:
89:
90:
91:
92:
93:
94:
95:
96:
97:
98:
99:
100:
101:
102:
103:
104:
105:
106:
107:
108:
109:
110:
111:
112:
113:
114:
115:
116:
117:
118:
119:
120:
121:
122:
123:
124:
|
#!/bin/sh
ROOTDIR="/usr/src/myvdr/"
REPOSDIR="/usr/src/repository/myvdr/"
ROOTPASS=""
function suapt
{
cat << EOF > ${ROOTDIR}execute.exp
#!/usr/bin/expect -f
set timeout -1
spawn /bin/su {--command=apt-get --assume-yes -y build-dep $1}
match_max 100000
expect -exact "Password: "
sleep 1
send -- "$2\\r"
expect eof
EOF
/usr/bin/expect ${ROOTDIR}execute.exp
rm ${ROOTDIR}execute.exp
}
function buildPlugin
{
plugin=$1
cd $ROOTDIR
echo -e "\E[1;31;40m* Erstelle Plugin: $plugin in Version $2\E[0m"
test -d $plugin && rm -rf $plugin
mkdir $plugin
cd $plugin
apt-get source $plugin=$2
if [ $? == 0 ]
then
if [ ! -f ${ROOTDIR}${plugin}_build-dep ]
then
echo -e "\E[1;35;40m* Hole build dependencies für $plugin\E[0m"
if ! [ `id -u` = "0" ]
then
if [ a$ROOTPASS = a"" ]
then
echo -ne "\E[1;33;40mGebe bitte das Root-Passwort ein [Achtung echo ON!]: \E[0m"
read ROOTPASS
fi
suapt $plugin $ROOTPASS && echo 1 > ${ROOTDIR}${plugin}_build-dep
else
apt-get --assume-yes -y build-dep $plugin && echo 1 > ${ROOTDIR}${plugin}_build-dep
fi
fi
cd `ls -d ${plugin}-*`
rm -f ${ROOTDIR}${plugin}_build_error
dpkg-buildpackage -rfakeroot -us -uc -sa||echo 1 > ${ROOTDIR}${plugin}_build_error
cd ..
if [ ! -f ../${plugin}_build_error ]
then
echo -e "\E[1;32;40m* Bauen hat geklappt, verschiebe Pakete..\E[0m"
# alte pakete entfernen
for file in `ls *.deb | awk -F_ '{print $1 "_" }'`; do rm -fv ${REPOSDIR}binary/${file}* ; done
rm -fv ${REPOSDIR}binary/${plugin}_*; rm -fv ${REPOSDIR}source/${plugin}_*
# neue verschieben
mv -v *.deb *.changes ${REPOSDIR}binary/ && mv -v ${plugin}_* ${REPOSDIR}source/
fi
else
echo -e "\E[1;31;40mEs konnten keine Quellen geholt werden!\E[0m"
fi
# Aufräumen
cd $ROOTDIR
rm -rf $plugin
}
if [ `id -u` == "0" ]; then echo -e "\E[1;31;40mAchtung: Das Script wurde als root gestartet!\E[0m"; fi
wget --tries=3 --timeout=10 -O Sources.gz http://e-tobi.net/vdr-experimental/pool-etch/source/vdr-multipatch/Sources.gz
gunzip -df Sources.gz
if [ -f $1 ] && ! [ a"$1" == a"" ]
then
while read plugin
do
version=`grep -wA 2 "^Package: $plugin" Sources | grep "^Version:" | awk '{print $2}'|sort -t. -k2n,2n|tail -n1`
if [ -z "$version" ]
then
echo "Keine Version für $plugin gefunden.. "
else
buildPlugin $plugin $version
fi
done < $1
else
echo -ne "\E[1;33;40mSollen alle Plugins gebaut werden [Y/n]: \E[0m"
read alle
if [ a$alle = a"n" ] || [ a$alle = a"N" ]
then
echo -ne "\E[1;33;40mBitte gebe den Namen des Plugins ein, dass gebaut werden soll: \E[0m"
read plugin
version=`grep -wA 2 "^Package: $plugin" Sources | grep "^Version:" | awk '{print $2}'|sort -t. -k2n,2n|tail -n1`
if [ -z "$version" ]
then
echo "Keine Version gefunden.. exit!"
exit 1
fi
buildPlugin $plugin $version
else
for plugin in `grep ^Package: Sources|grep -xv "^Package: vdr"|sort|uniq|awk '{ print $2 }'`
do
version=`grep -wA 2 "^Package: $plugin" Sources | grep "^Version:" | awk '{print $2}'|sort -t. -k2n,2n|tail -n1`
buildPlugin $plugin $version
done
fi
fi
cd $ROOTDIR
if [ ! -z "`ls *error 2>/dev/null`" ]
then
echo "folgende Plugins konnten nicht automatisch erstellt werden:"
for plugin in `ls *error`
do
echo " - $plugin"|cut -d'_' -f1
done
fi
cd ${REPOSDIR}
dpkg-scanpackages binary /dev/null 2>/dev/null | gzip -9c > binary/Packages.gz
dpkg-scansources source /dev/null 2>/dev/null | gzip -9c > source/Sources.gz |
|
Ihr könnt das Script entweder einfach so aufrufen und dann zwischen dem
Bau eines oder aller Plugins entscheiden, oder ihr erstellt euch eine
Textdatei, in der in jeder Zeile ein Plugin eurer wahl drinne steht.
Dann ruft ihr das Script mit dem Pfad zu eurer Textdatei auf und es
werden die Plugins aus der Datei gebaut.
Nachdem ihr eure Plugins die ihr haben wollt gebaut habt, könnt ihr sie wieder als root per apt-get installieren.
5. Tips und Tricks
1. Firmware austauschen (ist für den sc betrieb nötig)
code: |
1:
2:
3:
4:
5:
|
apt-get install bzip2 wget
cd /usr/lib/hotplug/firmware/
wget http://207.44.152.197/dvb-ttpci-01-f22623-patched.fw.bz2
bzip2 -dv dvb-ttpci-01-f22623-patched.fw.bz2
ln -s dvb-ttpci-01-f22623-patched.fw dvb-ttpci-01.fw |
|
2. vdr-plugin-sc für vdrdevel bauen
siehe hier
3. Mehrere Gleichzeitige Aufnahmenmit dem SC
Dazu muss der DVB Treiber gepatch werden
Ein Howto dazu hat prophecy hier verfasst
The rest comming soon
__________________ VIA EPIA M-1000 / Hauppauge WinTV Nexus-S rev.2.1 + CI / VDR 1.4.7 + diverse Plugins / Kernel 2.6.20.1 / Debian Etch 4.0
Dieser Beitrag wurde 56 mal editiert, zum letzten Mal von TheTom: 10.12.2007 13:36.
|
|
28.05.2006 18:11 |
|
|
TheTom
Member
Dabei seit: 21.05.2006
Beiträge: 624
Themenstarter
|
|
Beitrag von hier
Zitat: |
Original von sengst
code: |
1:
2:
3:
4:
5:
6:
7:
8:
9:
|
g++ -fPIC -g -O2 -Wall -Woverloaded-virtual -O0 -g -ggdb -rdynamic audio.o channels.o ci.o config.o cutter.o device.o diseqc.o dvbdevice.o dvbosd.o dvbplayer.o dvbspu.o eit.o eitscan.o epg.o filter.o font.o i18n.o interface.o keys.o lirc.o menu.o menuitems.o nit.o osdbase.o osd.o pat.o player.o plugin.o rcu.o receiver.o recorder.o recording.o remote.o remux.o ringbuffer.o sdt.o sections.o skinclassic.o skins.o skinsttng.o sources.o spu.o status.o svdrp.o themes.o thread.o timers.o tools.o transfer.o vdr.o videodir.o submenu.o osdcontroller.o rcontroller.o dvbsub.o vdrttxtsubshooks.o csa.o -ljpeg -lpthread -ldl -lcap ./libsi/libsi.a FFdecsa/FFdecsa.o -o vdr
/usr/lib/libc_nonshared.a(elf-init.oS)(.gnu.linkonce.t.__i686.get_pc_thunk.bx+0x0): In function `__i686.get_pc_thunk.bx':
: multiple definition of `__i686.get_pc_thunk.bx'
audio.o(.gnu.linkonce.t.__i686.get_pc_thunk.bx+0x0):/usr/src/vdr-1.4.0/audio.c:16: first defined here
collect2: ld returned 1 exit status
make[1]: *** [vdr] Fehler 1
make[1]: Leaving directory `/usr/src/vdr-1.4.0'
make: *** [build-stamp] Fehler 2 |
|
Vielleicht hat wer eine Idee, was der Grund sein könnte. Ich hab leider kaum Ahnung vom Programmieren bzw. Kompilieren.
Danke, Sengst |
Welches System verwendest du? Sarge / Woody / ??
Wo genau tritt der Fehler auf (beim complieren von SC oder VDR)?
__________________ VIA EPIA M-1000 / Hauppauge WinTV Nexus-S rev.2.1 + CI / VDR 1.4.7 + diverse Plugins / Kernel 2.6.20.1 / Debian Etch 4.0
|
|
29.05.2006 16:55 |
|
|
sengst
Member
Dabei seit: 29.05.2006
Beiträge: 3
|
|
Ich verwende sarge, der Fehler tritt beim Kompilieren von vdr auf. Habe
derzeit vdr 1.3.37 mit sc 0.5.5 laufen und wollte jetzt das ganze mal
updaten. |
|
30.05.2006 00:01 |
|
|
atomicus
Member
Dabei seit: 03.10.2001
Beiträge: 40
|
|
Zitat: |
Original von sengst
Ich verwende sarge, der Fehler tritt beim Kompilieren von vdr auf. Habe
derzeit vdr 1.3.37 mit sc 0.5.5 laufen und wollte jetzt das ganze mal
updaten. |
Welche VDR Version versuchst du zu kompilieren?
Ist das die gesamte Ausgabe?
Passiert das nach Aufruf von dpkg-buildpackage -rfakeroot -us -uc -sa ?
Gruss
atomicus
|
|
30.05.2006 14:17 |
|
|
Lou
Member
Dabei seit: 27.05.2006
Beiträge: 102
|
|
@TheTom
Zitat: |
Original von TheTom
Für all diejenigen die es gebrauchen können, hab ich jetzt mal ein kleines Paket mit entsprechender anleitung zusammengestellt.
Zu finden auf dem D*B-U*l*ad unter ctvdr-1.4_sc-0.5.8_csmon-0.1.1_camd3.866-debian-patches.zip (PID = 52877 ) |
D*B-U*l*ad sagt mir nichts - hast du mir einen Link wo man das Paket finden kann?
|
|
01.06.2006 10:47 |
|
|
TheTom
Member
Dabei seit: 21.05.2006
Beiträge: 624
Themenstarter
|
|
das upload-center halt wohl immoment schwierigkeiten.. oder was auch immer das zu bedeuten hat:
Zitat: |
Przerwa techniczna do godziny 22
|
Vieleicht bedeutet es auch bis 22 Uhr Wartungsarbeiten?!
Falls es heute abend nicht mehr geht, lade ich es gerne nochmal wo anders hoch...
__________________ VIA EPIA M-1000 / Hauppauge WinTV Nexus-S rev.2.1 + CI / VDR 1.4.7 + diverse Plugins / Kernel 2.6.20.1 / Debian Etch 4.0
|
|
01.06.2006 17:36 |
|
|
|
@TheTom: Hast du vielleicht eine Lösung für mein Problem ?
|
|
01.06.2006 18:04 |
|
|
TheTom
Member
Dabei seit: 21.05.2006
Beiträge: 624
Themenstarter
|
|
Zitat: |
Original von Aeroschmelz
Hi,
der erste Teil klappt bei mir nachdem ich die Rechte /debian/rules
angepaßt und einige Sachen nachinstalliert habe, muß ich denn dann noch
irgendwie installieren ?
|
was meinst du mit denn? Falls die frage lauten sollte, ob du denn
nochetwas installieren musst, dann lautet diese folgendermassen:
Ja!
Zitat: |
Original von TheTom
Zitat: |
** to build vdr-plugin-sc (or other plugins) install vdr-dev_1.4.0-1ctvdr1+softcam4_all.deb ** |
|
Zitat: |
Original von Aeroschmelz
Beim zweiten Teil mit dem sc plugin, bekomme ich nach
dpkg-buildpackage -rfakeroot -us -uc -sa
die Fehlermeldung, daß mein vdr gepatcht werden müßte:
Your VDR core is patched with an outdated patch version. Please upgrade to the supplied version.
|
hm... das genau könnte eigentlich damit zusammen hängen, dass das vdr-dev paket nicht installiert ist.
Habe eben auch mal danach im google und dem vdr-portal geschaut.. aber
nichts gefunden.. kannste evtl. mal die komplette ausgabe posten?
__________________ VIA EPIA M-1000 / Hauppauge WinTV Nexus-S rev.2.1 + CI / VDR 1.4.7 + diverse Plugins / Kernel 2.6.20.1 / Debian Etch 4.0
|
|
01.06.2006 22:33 |
|
|
atomicus
Member
Dabei seit: 03.10.2001
Beiträge: 40
|
|
Hallo,
kann es leider erst am Wochenende ausprobieren aber müssen die *.deb
Pakete nicht erst installiert werden mit dpkg -i ****.deb ?
Oder macht dies dpkg-buildpackage -rfakeroot -us -uc -sa gleich mit ?
Falls ja, bitte ignorieren.
Kenne nur den Weg über dpkg-buildpackage -tc und dpkg -i ****.deb.
Gruss
atomicus
|
|
01.06.2006 23:26 |
|
|
TheTom
Member
Dabei seit: 21.05.2006
Beiträge: 624
Themenstarter
|
|
Zitat: |
Original von atomicus
kann es leider erst am Wochenende ausprobieren aber müssen die *.deb
Pakete nicht erst installiert werden mit dpkg -i ****.deb ?
|
was habe ich oben geschrieben...? Es muss das vdr-dev*.deb installiert werden! Und wie installiert man dies?
Ja mit dpkg -i ...deb ;-)
Zitat: |
Original von atomicus
Oder macht dies dpkg-buildpackage -rfakeroot -us -uc -sa gleich mit ?
|
nein, falls du mal "man dpkg-buildpackage" aufgerufen hättest,könntest du die parameter auch deuten...
das -rfakeroot bedeutet nur, dass er ein fakeroot beim erstellen voranstellt.
Dies brauche ich, da ich meine Pakete immer nur als normaler Benutzer erstelle und nicht als root.
So.. und das -us -uc bewirkt, dass er die .changes datei nicht mit pgp signiert
Und das -sa bewirkt, dass er in der .changes auch das .orig.tar.gz mit einbezieht.
Zitat: |
Original von atomicus
Falls ja, bitte ignorieren.
Kenne nur den Weg über dpkg-buildpackage -tc und dpkg -i ****.deb.
|
das -tc bedeutet, dass er ein ./debian/rules clean ausführt (was er aber eigentlich sowieso machen tut.. )
Naja, aber auf jeden fall ist das vdr-dev paket zu installieren, damit dass plugin die richtigen includes (von vdr) findet/hat.
__________________ VIA EPIA M-1000 / Hauppauge WinTV Nexus-S rev.2.1 + CI / VDR 1.4.7 + diverse Plugins / Kernel 2.6.20.1 / Debian Etch 4.0
Dieser Beitrag wurde 2 mal editiert, zum letzten Mal von TheTom: 02.06.2006 11:13.
|
|
02.06.2006 11:12 |
|
|
TheTom
Member
Dabei seit: 21.05.2006
Beiträge: 624
Themenstarter
|
|
@Aeroschmelz
Nach der Installation muss erst das vdr paket mit "dpkg -i vdr_....deb" installiert werden...
Dann sollte es auch möglich sein, dass vdr-plugin-sc zu installieren
die eine Warnung kann man Ignorieren.
@all
Ansonnsten hier noch eine gute allgemeine beschreibung zu dem ganzen
http://www.heise.de/ct/ftp/projekte/vdr/develop.shtml
Werde gerade die Patches für das sc plugin wegen den i18n-Bug
anpassen... falls jemand noch einen Tip hat welche Patches mit rein
könnten (kann ja dann jeder für sich entscheiden welche er möchte oder
nicht) dann noch schnell bescheid geben ;-)
Das camd3 Patch werde ich dann auch noch aktualisieren.
Bis denn
__________________ VIA EPIA M-1000 / Hauppauge WinTV Nexus-S rev.2.1 + CI / VDR 1.4.7 + diverse Plugins / Kernel 2.6.20.1 / Debian Etch 4.0
|
|
02.06.2006 14:15 |
|
|
TheTom
Member
Dabei seit: 21.05.2006
Beiträge: 624
Themenstarter
|
|
Zitat: |
Original von Aeroschmelz
Jetzt habe ich es installiert, allerdings lädt er im vdr alle Plugins
außer sc nicht, angeblich wege Inkompatibilitäten in den binaries. |
jupp.. ist leider so, da dass sc-patch die api ändert. Deswegen müssen alle anderen plugins neu compiliert werden.
Aber auch dafür habe ich mir ein script gebaut (soll nur als beispiel dienen)
code: |
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
|
#!/bin/sh
#set +x
wget -O Packages http://e-tobi.net/vdr-experimental/dists/sarge/vdr-multipatch/binary-i386/Packages
for plugin in `grep vdr-plugin Packages | grep Package | awk {'print $2'}`
do
cd /usr/src/myVDR
echo "* Erstelle Plugin: $plugin"
test -d $plugin && rm -rf $plugin
mkdir $plugin
cd $plugin
apt-get -t testing source $plugin
if [ ! -f ../${plugin}_build-dep ]
then
su --command="apt-get build-dep $plugin" && echo 1 > ../${plugin}_build-dep
fi
cd `ls -d ${plugin}-*`
rm -f ../../${plugin}_build_error
dpkg-buildpackage -rfakeroot -us -uc -sa||echo 1 > ../../${plugin}_build_error
cd ..
test -e ../${plugin}_build_error || mv *.deb /usr/src/repository/sarge-member/binary/ && cp ${plugin}_* /usr/src/repository/sarge-member/source/
done
|
|
das script läd sich alle plugins herunter und compliert sie... und
anschliesend werden sie in mein lokales reporsitory verschoben.
__________________ VIA EPIA M-1000 / Hauppauge WinTV Nexus-S rev.2.1 + CI / VDR 1.4.7 + diverse Plugins / Kernel 2.6.20.1 / Debian Etch 4.0
|
|
02.06.2006 14:43 |
|
|
TheTom
Member
Dabei seit: 21.05.2006
Beiträge: 624
Themenstarter
|
|
ähm.. fast richtig,
aber das Repro liegt in meinem script nicht in /usr/src/myVDR sondern in
/usr/src/repository/sarge-member/ (und ist hier noch unterteilt in binary und source)
was diese Zeile in der sources.list zur folge hat:
deb file:/usr/src/repository/sarge-member binary/
deb-src file:/usr/src/repository/sarge-member source/
Ausserdem solltest du die /etc/apt/preferences anpassen (siehe weiter oben)
So, und hier das scipt, was dann die Packages.gz & Sources.gz erstellt.
code: |
1:
2:
3:
4:
5:
6:
|
#!/bin/sh
cd /usr/src/repository/sarge-member
dpkg-scanpackages binary /dev/null | gzip -9c > binary/Packages.gz
dpkg-scansources source /dev/null | gzip -9c > source/Sources.gz
|
|
Man kann dies aber auch mit einem der anderen automatischen systeme machen (siehe z.B. hier)
wenn du _error files erhälst, ist beim erstellen des paketes etwas
schief gelaufen... am besten dann manuell erstellen und schauen was
schief läuft.
__________________ VIA EPIA M-1000 / Hauppauge WinTV Nexus-S rev.2.1 + CI / VDR 1.4.7 + diverse Plugins / Kernel 2.6.20.1 / Debian Etch 4.0
|
|
02.06.2006 15:57 |
|
|
|
|
|
|
|