Návrh Školení

  1. Začínáme
    1. Získání Buildroot
    2. Sestavte systémové požadavky
    3. Terminologie mezi kompilátory: build, host, target, sysroot
    4. Výběr správného cíle
    5. Vytvoření minimálního vestavěného systému a jeho zavedení
    6. Obsah výsledného obrazu systému souborů
    7. Paralelní stavby
    8. Kompletní a částečné přestavby
  2. Cíle návrhu Buildroot
  3. Volby, které mají být provedeny
    1. Knihovna C: glibc nebo uClibc nebo musl?
    2. Init systém: busybox vs sysVinit vs systemd
    3. Správa uzlů zařízení v /dev
    4. Výběr dalších balíčků
  4. Pochopení pokynů k sestavení
    1. Syntaxe souborů Kconfig (Confog.in).
    2. Vlastnosti GNU Make používaného Buidroot Makefiles
    3. Průvodce stylem pro soubory Config.in a *.mk
    4. Jak přidat jednoduchý balíček založený na Autotools
    5. Rozdíl mezi pracovním a cílovým adresářem
    6. Potřeba hostitelských balíčků
    7. Jak vyjádřit závislosti a volitelné funkce
    8. Podpora pro jiné jazyky než C a sestavení systémů jiných než Autotools
    9. Ladění souborů Makefiles
    10. Přestavba jednoho balíčku
  5. Analýza výsledků sestavení
    1. Co zabralo tolik času na stavbu?
    2. Co zabralo tolik místa na disku?
    3. Proč byl vytvořen tento balíček?
  6. Organizace externích stromů balíčků
  7. Pracovní postup pro vývojáře aplikací
    1. Jak používat místní zdrojový adresář
    2. Přepisující pokyny k sestavení
    3. Ladění vaší aplikace
    4. Urychlení přestaveb
    5. Zobrazení protokolů sestavení
  8. Řešení běžných problémů s křížovou kompilací
    1. Jak napsat svůj vlastní software tak, aby byl přátelský ke cross-kompilátorům
  9. Pracovní postup pro vývojáře jádra
    1. Jak se jádro zavádí na vestavěném systému
    2. Změna možností konfigurace a přidávání záplat
    3. Mechanismy načítání modulů
  10. Výroba hotového výrobku
    1. Spuštění démonů při spuštění
    2. Poskytování vlastních konfiguračních souborů
    3. Dostupné mechanismy aktualizace firmwaru
    4. Upgrade na novou verzi Buildroot
    5. Dodržování open-source licencí

Požadavky

  • Účastník musí mít alespoň jednou vytvořené jádro pro tradiční desktopový (neembedded) Linux systém.
  • Ví, z jakých komponent se skládá uživatelský prostor Linux na desktopovém systému.
  • Ví, jak generovat a používat záplaty.
  • Musí být schopen vysvětlit, co je GNU Make, Autotools, jaké další systémy sestavení existují.
  • V ideálním případě udržuje alespoň jeden Linux balíček, buď jako upstream autor, nebo v jakékoli tradiční Linux desktopové distribuci.
  • Předchozí zkušenosti s embedded vývojem nejsou vyžadovány a nenahrazují výše uvedené znalosti o tradičních Linux desktopech.
 7 hodiny

Počet účastníků


Price per participant

Upcoming Courses

Související kategorie