FAQ „Wie erstelle ich mir selber ein E2 CVS Image“

FAQ „Wie erstelle ich mir selber ein E2 CVS Image“
Erstellt am 31.03.2007 von Schaedelmeister Da des öfteren Fragen zu diesem Thema aufkommen hier mal eine kurze „step for step“ Anleitung.
Als Grundvoraussetzung benötigen wir natürlich eine gute Linux Distribution. Ich persönlich kann hier jedem nur das Kubuntu Projekt ans Herz legen. Meine aktuelle Distribution ist die (K)Ubuntu 7.04 Feisty. Ist zwar noch im Betastatus, aber sehr gut geeignet!
Die passende Distribution findet man unter folgender URL:
http://kubuntu.org/announcements/7.04­beta.php
oder man sucht sich ein anderes „gutes“ System. Ich glaube das ist eher eine Glaubensfrage!
Okay, wir gehen von einem fertig installiertem Grundsystem aus, auf welches wir nun aufbauen wollen.
Als erstes machen wir unser System OE (Openembedded) fähig. Dazu editieren wir unsere sources.list, welche wir unter /etc/apt/sourcel.list finden. Ich persönlich benutze dazu den pico. Man kann auch vi oder andere Editoren nehmen. In dieser Anleitung mache ich alles mit pico!
Wir öffnen unsere Quelle mit:
sudo pico /etc/apt/sources.list
Nun sehen wir bereits einige Sourceslinks welchen wir um einen Eintrag ergänzen:
deb http://www.openembedded.org/dl/packages/
nun speichern wir mit der Tastenkombination „STRG­O“ und der ENTER Taste unseren Eintrag. Mit „STRG­X“ verlassen wir den Editor.
Nun wollen wir die neue Sourcequelle unserem System bekannt machen. Wir geben folgenden Befehls ein:
sudo aptitude update
und wenn das Update durchgelaufen ist, können wir das Paket openembedded­essential installieren:
sudo aptitude install openembedded­essential Sobald die Installation durchgelaufen ist, kopieren wir noch eine andere monotone Version, welche wir hier finden:
http://www.i­have­a­dreambox.com/wbb2/thread.php?threadid=64451
Datei Downloaden auf Desktop, umbenennen in mtn, dann kopieren:
sudo cp ­d /$home/Desktop/mtn /usr/bin
nun Rechte vergeben:
sudo chmod 755 /usr/bin/mtn
und Überprüfen mit:
mtn ­­version
sollte folgendes bringen:
schaedelmeister@linux:~$ mtn ­­version
monotone 0.29 (base revision: 796bc8596d6c5c68828fbfb6a620a09a3af15ded)
schaedelmeister@linux:~$
Nun können wir noch Psycho installieren, welches ein wenig an Geschwindigkeit bringt. Das Paket Psycho findet Ihr unter:
http://www.i­have­a­dreambox.com/wbb2/thread.php?threadid=64452
Einfach downloaden, entpacken mit der sgell in den Ordner wechseln und
python setup.py install
eingeben.
So, nun sollten wir trotzdem noch alle benötigten Pakete überprüfen ob diese im System installiert sind. Ich empfehle gleichzeitig alle für E1 Images benötigten Pakete ebenfalls zu installieren.
Diese sind:
cvs
autoconf
libtool
g++
flex
bison
pkg­config
python­dev
subversion
texi2html
diffstat
zlib1g­dev
automake
Wobei bei automake die Version 1.9 installiert sein sollte. Um auf Nummer sicher zu gehen folgendes durchführen:
aptutude update
aptitude remove automake
aptitude install automake1.9
Nun sind wir eigentlich „Ready“ und erstellen uns einen Ordner im $HOME Verzeichniss und holen und das aktuelle Makefile zum compilen. Dieses findet Ihr immer Topaktuell unter:
http://schwerkraft.elitedvb.net/plugins/scmcvs/cvsweb.php/~checkout~/Makefile­
opendreambox?content­type=text%2Fplain;cvsroot=opendreambox
und speichert das Makefile­opendreambox in dem Ordner ab. Wichtig ist nun im Makefile das Image einzutragen, welches wir auschecken wollen.
Da wir hier ein 7025 Image erstellen möchten in den ersten beiden Zeilen:
# user config
MACHINE=dm7025
Wir könnten hier auch dm7020 oder dm600pvr eintragen für andere Boxen.
Nun gehen wir mit der shell in das Verzeichniss und geben den Befehl:
make ­f Makefile­opendreambox image ab.
Das Script fängt nun an diverse Ordner und Pakete in unserem Verzeichniss zu erstellen und herunterzuladen. Dies kann je nach Leistung unserer Internetleitung und Computer unterschiedlich dauern.
Wenn das Script fertig ist, sollte unter /home/DEINNAME/7025/build/tmp/deploy/images
ein fertiges Image mit der Endung *****.nfi liegen. Um nun das aktuelle CVS Datum und auch z.B. die neue RASS Funktion in das Image zu bringen müssen wir 2 Dateien editieren.
/home/DEINNAME/7025/openembedded/packages/dreambox/dreambox­dvb­modules.bb
dort sollte aktuell folgendes Datum verankert/editiert werden (24.03.2007). Dies sind die Module/Treiber für die 7025
KV_dm7025 = "2.6.12.6"
PV_dm7025 = "${KV}­20070324${@get_modules_extension(bb, d)}"
Nun noch die
/home/DEINNAME/7025/openembedded/packages/enigma2/enigma2.bb
die Zeile
SRCDATE = "20070401"
sollte immer 1 Tag mehr eingetragen werden. Heute ist der 31.03.2007 also 01.04.2007.
Nun noch einmal im Quellordner folgende Befehle absetzen:
make ­f Makefile­opendreambox image Das wars. Nun sollten die letzten Zeilen aus unserer shell so aussehen:
NOTE: package dreambox­image­1.0: started
NOTE: package dreambox­image­1.0­r0: task do_rootfs: started
NOTE: package dreambox­image­1.0­r0: task do_rootfs: completed
NOTE: package dreambox­image­1.0­r0: task do_build: started
NOTE: package dreambox­image­1.0­r0: task do_build: completed
NOTE: package dreambox­image­1.0: completed
NOTE: build 200703312206: completed
Build statistics:
Attempted builds: 2
schaedelmeister@linux:~/cvs/7025$ Für Fragen, Anregungen, Lob etc. bitte unseren Developer Bereich CVS/Openembedded Bereich nutzen, welchen Ihr hier findet:
http://www.i­have­a­dreambox.com/wbb2/board.php?boardid=260
Ich hoffe, das ich mit dieser kleinen schnellen Anleitung ein wenig Hilfestellung geben konnte!
Euer Schaedelmeister
http://www.i­have­a­dreambox.com