Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen angezeigt.

Link zu dieser Vergleichsansicht

Beide Seiten der vorigen RevisionVorhergehende Überarbeitung
Nächste Überarbeitung
Vorhergehende Überarbeitung
software:linux:buildroot:start [2014-11-17 13:45] abajricsoftware:linux:buildroot:start [2022-09-21 09:16] (aktuell) Urs Graf
Zeile 1: Zeile 1:
 ====== Buildroot ====== ====== Buildroot ======
-<box green 30% right | Quick Links> +<box green 20% right | Quick Links> 
-{{ http://buildroot.uclibc.org/images/logo.png | Buildroot Logo }}+{{ http://buildroot.uclibc.org/images/logo.png?70 | Buildroot Logo }}
 ---- ----
   * [[http://buildroot.uclibc.org/ | Projektwebseite]]   * [[http://buildroot.uclibc.org/ | Projektwebseite]]
Zeile 8: Zeile 8:
  
  
-Buildroot ist ein Tool um embedded Linux Systeme zu generieren. Es besteht aus Makefile, Patches und Skripts, welche einem ermöglichen komplette Linux Systeme zu erstellen, inkl. Toolchain, Root-Filesystem, Kernel und Bootloader. Es unterstützt die gängisten CPU Architekturen (x86, ARM, PowerPC, ...) und viele Software-Pakete wie zum Beispiel: BusyBox, OpenSSH-Server, OpenCV, Qt, ...+Buildroot ist ein Toolum eingebettete Linux-Systeme zu generieren. Es besteht aus Makefile, Patches und Skripts: Daraus werden Toolchain, Root-Filesystem, Kernel und Bootloader generiert. Es unterstützt die gängigsten CPU Architekturen (x86, ARM, PowerPC, ...) und viele Software-Pakete wie zum Beispiel: BusyBox, OpenSSH-Server, OpenCV, Qt, ...
  
 Der Vorteil von Buildroot ist, dass sehr kleine Images erzeugt werden können und dass die Konfiguration relativ einfach ist. Alle Einstellungen könne bei Bildroot graphisch (menuconfig) konfiguriert werden. Der Vorteil von Buildroot ist, dass sehr kleine Images erzeugt werden können und dass die Konfiguration relativ einfach ist. Alle Einstellungen könne bei Bildroot graphisch (menuconfig) konfiguriert werden.
  
 +----
  
-== Beispiel == +**[[.:buildrootsystemerstellen Eigenes System mit Buildroot erstellen ]]**
-[[.:zoom:start | Buildroot auf dem Zoom Board]]+
  
 +----
  
-== Abhängigkeiten ==+ 
 +=== Abhängigkeiten =====================================================
  
 Voraussetzungen um mit Buildroot zu arbeiten: Voraussetzungen um mit Buildroot zu arbeiten:
Zeile 25: Zeile 27:
 </code> </code>
  
-Da die Builds recht lange dauern können, empfielt es sich alles in einer Screen-Session zu machen, vorallem wenn man über SSH arbeitet.+Da die Builds recht lange dauern können, empfielt es sich alles in einer Screen-Session zu machen, vor allem wenn man über SSH arbeitet.
  
 Screen kann, wie folgt, installiert werden: Screen kann, wie folgt, installiert werden:
Zeile 46: Zeile 48:
  
  
- +==== Datum und Zeit setzen ====
-== Download == +
- +
-Ein Buildroot-Release kann von der Projektwebseite heruntergeladen werden oder mit Git: +
 <code> <code>
-git clone git://git.buildroot.net/buildroot+date -s "2016-08-17 16:56"
 </code> </code>
  
-Als erstes muss ein Release ausgewählt werden. Alle Releases können mit //git tag// angezeigt werden. Am besten man mach gleich einen eigenen Branch, damit die Konfiguration gleich eingecheckt werden kann:+==== Toolchain ==== 
 +Je nach Architektur und verwendeter Hardware muss die passende Toolchain verwendet werden, siehe [[software:linux:buildroot:cross-toolchain|Toolchain für Buildroot]]
  
-<code> +=====Beispiele===== 
-$ git checkout -b work 2014.08 +  * [[software:linux:emdebian:phycore-mpc5200b|Installation von Emdebian Grip oder Buildroot-FS auf den Phytec phyCORE-MPC5200B]] 
-</code>+  * [[software:linux:buildroot:zoom:start|Buildroot auf dem ZOOM-Board]]
  
  
- 
-== Konfiguration == 
- 
-Alle Einstellungen werden über ein ncurses-UI gemacht: 
- 
-<code> 
-$ make menuconfig 
-</code> 
- 
-Unter //Build options// => //Download dir// kann der Ordner angegeben werden, in den alle heruntergeladenen Sourcen gespeichert werden. Das beschleunigt den Build und spart Speicherplatz, falls Buildroot für mehrere Boards oder für unterschiedliche Konfigurationen verwendet wird. 
- 
-Nachdem die Einstellungen gemacht wurden, kann alles, was von den Default-Werten abweicht in eine Datei gespeichert werden (//defconfig//): 
- 
-<code> 
-$ make savedefconfig 
-</code> 
- 
-Sobald man mit den Einstellung zufrieden ist, kann man das File //defconfig// nach //config/<boardname>_defconfig// verschieben und in Git aufnehmen. Eine solche Konfiguration wird folgendermassen geladen: 
- 
-<code> 
-$ make <boardname>_defconfig 
-</code> 
- 
- 
-== Build == 
- 
-Der Kompiliervorgang wird mit //make// gestartet. Die Parallelisierungsoption darf hier **nicht** verwendet werden (<del>make -j8</del>): 
- 
-<code> 
-$ make 
-</code> 
- 
-Die Ausgabe befindes sich im Ordner //output//.