README.md: Various Updates #5
20
README.md
20
README.md
|
@ -8,13 +8,12 @@ Weitere Informationen gibt es auf <https://freifunk.net/> und auf <https://wiki.
|
|||
|
||||
# Firmware selbst kompilieren
|
||||
## Voraussetzungen
|
||||
* `apt-get install zlib1g-dev lua5.2 build-essential unzip libncurses-dev gawk git subversion realpath libssl-dev` (Sicherlich müssen noch mehr Abhängigkeiten installiert werden, diese Liste wird sich hoffentlich nach und nach füllen. Ein erster Ansatzpunkt sind die Abhängigkeiten von OpenWrt selbst)
|
||||
* `git clone https://github.com/FreifunkFranken/firmware.git`
|
||||
* `apt-get install zlib1g-dev lua5.2 build-essential unzip libncurses-dev gawk git subversion manpages-pl libssl-dev` (Sicherlich müssen noch mehr Abhängigkeiten installiert werden, diese Liste wird sich hoffentlich nach und nach füllen. Ein erster Ansatzpunkt sind die Abhängigkeiten von OpenWrt selbst)
|
||||
* `git clone https://git.freifunk-franken.de/freifunk-franken/firmware.git`
|
||||
* `cd firmware`
|
||||
|
||||
## Erste Schritte
|
||||
Je nachdem, für welche Hardware die Firmware gebaut werden soll, muss das BSP gewählt werden:
|
||||
|
||||
* `./buildscript selectbsp bsp/ath79-generic.bsp`
|
||||
* Um die vorhandenen BSPs zu sehen, kann `./buildscript selectbsp help` ausgeführt werden.
|
||||
|
||||
|
@ -30,11 +29,15 @@ Die Daten des BSP werden nie alleine verwendet. Zuerst werden immer die Daten au
|
|||
Die BSP-Datei wird durch das Buildscript automatisch als dot-Script geladen, somit stehen dort alle Funktionen zur Verfügung.
|
||||
Das Buildscript generiert ein dynamisches sed-Script. Dies geschieht, damit die Templates mit den richtigen Werten gefüllt werden können.
|
||||
|
||||
### `./buildscript selectvariant`
|
||||
Hier wählt man aus ob man Node Firmware oder Layer3 Firmware bauen möchte:
|
||||
* `./buildscript selectvariant [node/layer3]`
|
||||
* Um die verschiedenen Varianten zu sehen, kann `./buildscript selectvariant help` ausgeführt werden.
|
||||
|
||||
### `./buildscript prepare`
|
||||
* Sourcen werden in einen separaten src-Folder geladen, sofern diese nicht schon da sind. Zu den Sourcen zählen folgende Komponenten:
|
||||
* OpenWrt
|
||||
* Sämtliche Packages (ggf. werden Patches angewandt)
|
||||
|
||||
* Eine OpenWrt Feed-Config wird mit dem lokalen Source Verzeichnis als Quelle angelegt
|
||||
* Die Feeds werden geladen
|
||||
* Spezielle Auswahl an Paketen wird geladen
|
||||
|
@ -50,7 +53,11 @@ Dieses Kommando arbeitet folgendermaßen:
|
|||
* Config-Format vereinfachen
|
||||
* Config ins BSP zurück speichern
|
||||
|
||||
### `./buildscript updatefeeds`
|
||||
Aktualisiert die OpenWrt Feeds für zusätzliche Pakete, die in die Firmware eingebaut werden. Dabei werden die Referenzen im build/ Verzeichnis aktualisiert. Dieser Schritt wird bereits von `./buildscript prepare` übernommen, daher ist dies nur bei manuellen Änderungen der Feeds nötig.
|
||||
|
||||
### `./buildscript build`
|
||||
Sollte man am besten mit Hilfe des Tools 'screen' oder ähnlichem laufen lassen um einen Abbruch des Builds bei Verbindungsproblemen oder ähnlichem zu verhindern.
|
||||
* prebuild
|
||||
* $target/files aufräumen
|
||||
* (In $target/files liegen Dateien, die später direkt im Ziel-Image landen)
|
||||
|
@ -63,12 +70,15 @@ Dieses Kommando arbeitet folgendermaßen:
|
|||
* postbuild
|
||||
* board_postbuild() wird aufgerufen
|
||||
|
||||
### `./buildscript buildall`
|
||||
Kann verwendet werden um für alle BSPs Firmware zu bauen. Das kann jedoch mehrere Stunden dauern.
|
||||
|
||||
## Erweiterung eines BSPs
|
||||
Beispielhaftes Vorgehen um den WR1043V2 zu unterstützen.
|
||||
|
||||
### Repository auschecken
|
||||
```
|
||||
git clone https://github.com/FreifunkFranken/firmware.git
|
||||
git clone https://git.freifunk-franken.de/freifunk-franken/firmware.git
|
||||
cd firmware
|
||||
```
|
||||
|
||||
|
|
Loading…
Reference in New Issue