help/howtos/development/create_cross-compiler_toolchain
Howtos: Entwicklung
- Entpacken und Packen von Firmware-Images
- Kernel konfigurieren und kompilieren
- Developer Information
- Flash Partitionierung
- trac-post-commit-hook
- ADAM2-Bootloader
- Einstellungen speichern im Urlader-Environment
- Erstellen einer GUI für Pakete in Freetz
- Eigene Dateien in die Firmware integrieren
- Addon Paket installieren
- Patches in Freetz einspielen
- Freetz Build-Prozeß
- Ablauf eines Firmware-Updates
- Flash-Partitionen im laufenden Betrieb sichern
- Flash-Partitionen von außen mit FTP sichern
- Wie die FritzBox Manipulationen erkennt
- Eigene Programme kompilieren
- Busybox konfigurieren und kompilieren
- Dynamische Bandbreitenanzeige per SVG
- Platz sparen im Dateisystem der FritzBox
- Shell Coding Conventions
- Wie baue ich ein eigenes Paket für Freetz?
- Package Development
- Cross-Compiler / Toolchain erstellen
- First steps - How to start your first freetz package
Cross-Compiler / Toolchain erstellen
Das Erstellen eines Cross-Compilers ist mit Freetz denkbar einfach:
- make menuconfig Hier unter Advanced options → Compiler options die Optionen für den Cross-Compiler wählen. Soll der Compiler Programme für eine mit Freetz erzeugte Firmware kompilieren, so ist in der Regel nichts zu ändern. Soll der Compiler hingegen für eine originale Firmware kompilieren können, so solltest du bei "uClibc config" die entsprechende Konfiguration auswählen.
ACHTUNG: Im zweiten Fall sollte diese entpackte Instanz von Freetz nicht mehr zum Erstellen von Images verwendet werden, sondern nur noch der Cross-Compiler selbst.
- Benötigt wird gcc, binutils, make, bison, flex und texinfo: make toolchain
Eine ganze Weile und ca 2 GB später wurden zwei Cross-Compiler erstellt:- ./toolchain/kernel/bin/mipsel-unknown-linux-gnu-gcc : Cross-Compiler für die Kernel Sourcen
- ./toolchain/target/bin/mipsel-linux-uclibc-gcc : Cross-Compiler für Userspace Programme
- make libs Erstellt alle im menuconfig ausgewählten Libraries und installiert deren Header.
