Homepage Wiki Forum Buy

Gnublin Debian

Aus GNUBLIN

Inhaltsverzeichnis

Das GNUBLIN Paket System

Um eine einfache Möglichkeit, komplette Anwendungen, Treiber für Module etc. einfach für Anfänger verwendbar zu machen, gibt es GNUBLIN Pakete. Das Paketformat basiert auf der bekannten Debian Paket Verwaltung (.deb) die man mit den apt Tools einfach installieren und entfernen kann.

Momentan sind folgende GNUBLIN Pakete vorhanden:

Gnublin Paket Liste

Lokale Installation

Im Ordner /root/deb befinden sich die zum Zeitpunkt der Erstellung der Distribution die verfügbaren Pakete.

Installation per Internet

Weiter oben sieht man gleich die Pakete und deren Links. Hat man das Paket herunter geladen, so kann man es mit

dpkg -i <Paketname>

einfach installieren.

Eigenes Debian Paket erstellen

Will man eigene Programme entwickeln, die dann später mit einem Befehl ins Rootfs installiert werden sollen, so bietet sich hierfür das "Debian Paketverwaltungssystem" an. Im folgendem wird das Erstellen eines einfachen Debian Pakets, anhand eines Beispiels erklärt.

1. Ordner Struktur erstellen

Zum Erstellen der Ordnerstruktur ist darauf zu achten, dass die selbst angelegten Ordner bei der Installation direkt ins Filesystem (ausgehend von /) kopiert werden. Soll das Programm später zum Beispiel im Ordner /usr/bin/ liegen so muss dieser Ordner auch selbst im Debian Packet mit angelegt werden(usr/bin)

DEBIAN Ordner: Der DEBIAN Ordner muss ebenfalls mit angelegt werden. Er enthält das wichtige control File, welches wiederum die Eigenschaften des Pakets festlegt.

Sehen wir uns mal die Ordnerstruktur für das Programm gnublin-app an:

gnublin-app
├── DEBIAN
│   └── control
└── usr
    └── bin
        └── gnublin-app

Wie man nun sehen kann, liegt das Programm gnubln-app im Ordner usr/bin/. Nach der Installation wird das Programm im Rootfs in den Ordner /usr/bin/ kopiert werden. Weitere Dateien kann man so ebenfalls an verschiedene Orte kopieren.

2. control Datei

Package: gnublin-app
Version: 0.0.1-1
Section: misc
Priority: extra
Architecture: armel
Depends:
Installed-Size: 11747
Maintainer: Benedikt Niedermayr <niedermayr@embedded-projects.net>
Homepage:
Description: An anpplication for controlling an line based DOGM Display.


  • Package: Legt den Namen des debian Pakets fest.
  • Version: Legt die Versionsnummer des Pakets fest.
  • Section: Legt die Klassifizierung des Pakets fest.
  • Priority: Legt die Priorität des Pakets fest.
  • Architecture: Legt die Architektur des Pakets fest.
  • Depends: Legt die Abhängigkeiten von anderen Paketen fest.
  • Installed-Size: Legt die Größe des installierten Pakets fest.
  • Maintainer: Legt den Ersteller des Pakets fest.
  • Homepage: Hier kann optional eine Homepage mit eingetragen werden.
  • Description: Hier wird die Beschreibung des Pakets festgelegt.

3. Erstellen des Pakets

Hat man nun alle nötigen Ordner und das controll File angelegt, so kann man mit

dpkg -b gnublin-app gnublin-app.deb

das komplette Debian Paket bauen.

4. Installieren/Deinstallieren des Pakets

Installieren:

dpkg -i <Paketname>

Deinstallieren:

dpkg -r <Paketname>

Altes ELDK Rootfs

Möchte man ein bekanntes Programm auf GNUBLIN verwenden, muss man nicht jedes mal den Cross-Compiler anschmeißen. Debian oder Ubuntu bietet seit längerer Zeit jede offizielle PC-Version ebenfalls für die ARM-Architektur an.

Im folgenden Beispiel wird gezeigt wie man sich die rrdtools vom Debian Server holt und in GNUBLIN packt. Die rrdtools dienen um Daten zyklisch zu speichern und diese als Diagramme und Kurven hübsch anzuzeigen. Damit könnte man z.B. regelmäßig Daten vom AD-Wandler abholen und als Kurve über einen längeren Zeitraum anzeigen lassen.

So gehts: Man geht zum Standard Debian Paketverzeichnis, z.B. fuer rrdtool

http://packages.debian.org/squeeze/rrdtool

Am Ende der Seite siehst man "Download", da kann man sich die Achitektur aussuchen. Für GNUBLIN braucht man "armel". Dann holt man sich rrdtool_1.4.3-1_armel.deb.

Mit dem Kommando

alien -t rrdtool_1.4.3-1_armel.deb

wird das Paket von *.deb in das tar.gz Format konvertiert. Für den Befehl benötigt man das Programm alien, welches man auf dem Hostrechner einfach per apt-get install alien installieren kann.

Das Ergebnis ist: rrdtool_1.4.3.tgz

Dann das Ergebnis per SCP oder manuell auf das GNUBLIN nach / kopieren und dort entpacken:

tar xvzf rrdtool-1.4.3.tgz


Startet man das Programm und es kommt eine Meldung, dass eine bestimme Bibliothek fehlt macht man den gleichen Prozess nochmal. Meist muss man das mit allen vom ursprünglichen abhängigen Pakten. Eventuell sollte man hier mal ein Skript für GNUBLIN bauen, in dem man nur den Hauptnamen vom Paket angibt und das Skript macht dann den Rest bis alle Abhängigkeiten aufgelöst sind.

In anderen Sprachen