Howtos: Entwicklung
- Entpacken und Packen von Firmware-Images
- Patches in Freetz einspielen
- Example 3: NZBGet
- Example 2: par2cmdline
- Example 1: Httptunnel
- Ablauf eines Firmware-Updates
- Eigene Programme kompilieren
- Dynamische Bandbreitenanzeige per SVG
- Platz sparen im Dateisystem der FritzBox
- Flash-Partitionen im laufenden Betrieb sichern
- Release Management
- First steps - How to start your first freetz package
- Kernel konfigurieren und kompilieren
- Menükonfiguration pflegen
- ADAM2-Bootloader
- Einstellungen speichern im Urlader-Environment
- Busybox konfigurieren und kompilieren
- Wie baue ich ein eigenes Paket für Freetz?
- Firmware-Image-Namen analysieren und interpretieren
- Developer Information
- Addon Paket installieren
- Paketverwaltung für Freetz
- Wie die FritzBox Manipulationen erkennt
- Shell Coding Conventions
- Package Development
- Erstellen einer GUI für Pakete in Freetz
- Flash Partitionierung
- Trac Hooks
- Package Developing - Advanced Topics
- Eigene Dateien in die Firmware integrieren
- Freetz Build-Prozeß
- Flash-Partitionen von außen mit FTP sichern
- libmodcgi.sh
- Cross-Compiler / Toolchain erstellen
- Eigene Download-Toolchain erstellen
- Target/Native-Compiler-Toolchain erstellen
Busybox konfigurieren und kompilieren
Vorraussetzung ist eine Toolchain (siehe Cross-Compiler / Toolchain erstellen). Sollten jemals Probleme mit nicht vorhandenen Verzeichnissen auftauchen, so kann ein make world Abhilfe schaffen. In der Regel sollte das aber nicht nötig sein.
- Der Boxtyp (Type) sollte richtig in der Freetz Konfiguration (make menuconfig)gewählt sein, da nur die Busybox für die entsprechende Box kompiliert wird
- make busybox-dirclean Löscht die aktuell entpackten Sourcen der Busybox (wir werden von komplett sauberen Busybox Sourcen kompilieren; wer das nicht will, kann es mit make busybox-clean versuchen)
- make busybox-menuconfig Die Konfiguration der Busybox wird danach wieder nach ./make/busybox/Config.<target-ref> zurückgespeichert
- make busybox-precompiled Dies kompiliert die Busybox und aktualisiert:
- ./busybox/busybox-<target-ref>
- ./busybox/busybox-<target-ref>.links