Hi,
Ich habe hier ne
recht einfache Möglichkeit um ein
*.ipk Paket direkt an der
Enigma2 Box zu bauen, dazu hänge ich das Paket
ipkbuild_1.0-r1_all.ipk unten zum
Downloaden an.
Wie funktioniert das Ganze dann ?;
Das Paket installiert erstmal das
vollwertige ar welches bei den
binutils mit
dabei ist denn mit dem
busybox ar geht da
nix.
Weiters wird ein Script Namens
ipk-build im Verzeichnis;
/usr/local/bin
abgelegt, sowie ein
rudimentäres HowTo dazu unter;
/home/root/_workdir
es nennt sich "
HowTo ipk bauen.txt" dieses
HowTo zeige ich aber auch nochmal hier im
Spoiler;
► Text anzeigen
Code: Alles auswählen
Kleine Anleitung !
HINWEIS ! Es duerfen "keine anderen Dateien" bzw. "Ordner" als die zum "*.ipk Paket" bauen
benoetigten im Verzeichnis "/home/root/_workdir/ipkbuild/" vorliegen.
Und es kann immer nur ein "*.ipk Paket" gebaut werden, danach muss man das Verzeichnis;
"/home/root/_workdir/ipkbuild/" bereinigen bevor man ein anderes "*.ipk Paket" bauen kann.
Das Paket "ipkbuild" erstellt fuer den Bau eines "*.ipk Paketes" das folgende Verzeichnis;
"/home/root/_workdir/ipkbuild/CONTROL"
In das Verzeichnis;
"/home/root/_workdir/ipkbuild/CONTROL"
kommt die control Datei mit den korrekten Eintraegen sowie "bei Bedarf" die "postinst Scripte"
wie z.b: die Dateien "preinst" "postinst" "prerm" "postrm"
Diese Dateien ("postinst Scripte") muessen ausfuehrbar gemacht werden, das kann man z.b:
via FileZilla tun.
Es muss im Verzeichnis;
"/home/root/_workdir/ipkbuild"
weiters das Verzeichnis korrekt strukturiert mit dem Inhalt vorliegen welchen man bauen
will also z.b: /usr/bin/zip fuer das Programm Zip.
Wenn man alles vorbereitet hat kann man das "*.ipk Paket" dann mit folgendem telnet/ssh Befehl bauen;
ipk-build /home/root/_workdir/ipkbuild
Der Output dazu sieht hier z.b: dann so aus;
root@gbquad4k:~# ipk-build /home/root/_workdir/ipkbuild
ar: creating ./ipkbuild_1.0-r1_all.ipk
Packaged content was moved at /home/root/_workdir/ipkbuild into ./ipkbuild_1.0-r1_all.ipk
Das fertige "*.ipk Paket" in "diesem Fall" das Paket;
ipkbuild_1.0-r1_all.ipk
liegt danach im Verzeichnis;
"/home/root/_workdir".
Das wars !!!
Abschliessend noch ein Tipp welches "postinst Script" tut was ?;
preinst: Ein Shell Script welches vor Installation des Paketes ausgeführt wird.
postinst: Ein Shell Script welches nach Installation des Paketes ausgeführt wird.
prerm: Ein Shell Script welches vor Entfernen des Paketes ausgeführt wird.
postrm: Ein Shell Script welches nach Entfernen des Paketes ausgeführt wird.
Im
HowTo steht
alles weitere wichtige daher gibts da
nicht mehr dazu zu schreiben.
Grüsse
Pike