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
Kernel 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 gewählt sein, da nur der Kernel für die entsprechende Box kompiliert wird
- make kernel-dirclean Löscht den aktuell entpackten Source Tree des Kernels (wir werden von komplett sauberen Kernel Sourcen kompilieren; wer das nicht will, kann es mit make kernel-clean versuchen)
- make kernel-menuconfig Die Konfiguration des Kernels wird danach wieder nach ./make/linux/Config.<kernel-ref> zurückgespeichert
- make kernel-precompiled Nun werden der Kernel und die Kernel Module kompiliert:
- ./kernel/kernel-<kernel-ref>.bin
- ./kernel/modules-<kernel-ref>/