Dziękujemy za wysłanie zapytania! Jeden z członków naszego zespołu skontaktuje się z Państwem wkrótce.
Dziękujemy za wysłanie rezerwacji! Jeden z członków naszego zespołu skontaktuje się z Państwem wkrótce.
Plan Szkolenia
- Wprowadzenie
- Pobieranie Buildroot
- Wymagania systemu budowania
- Terminologia kompilatora krzyżowego: build, host, target, sysroot
- Wybór właściwego celu
- Budowanie minimalnego systemu wbudowanego i jego uruchomienie
- Zawartość wynikowego obrazu systemu plików
- Równoległe budowanie
- Pełne i częściowe przebudowy
- Cele projektowe Buildroot
- Decyzje do podjęcia
- Biblioteka C: glibc, uClibc czy musl?
- System init: busybox vs sysVinit vs systemd
- Zarządzanie węzłami urządzeń w /dev
- Wybór innych pakietów
- Zrozumienie instrukcji budowania
- Składnia plików Kconfig (Confog.in)
- Cechy GNU Make używane w Makefiles Buildroot
- Przewodnik stylu dla plików Config.in i *.mk
- Jak dodać prosty pakiet oparty na Autotools
- Różnica między katalogami staging a target
- Potrzeba pakietów hosta
- Jak wyrażać zależności i opcjonalne funkcje
- Obsługa języków innych niż C oraz systemów budowania innych niż Autotools
- Debugowanie Makefiles
- Przebudowa pojedynczego pakietu
- Analiza wyników budowania
- Co zajęło tak dużo czasu?
- Co zajęło tak dużo miejsca na dysku?
- Dlaczego ten pakiet został zbudowany?
- Organizacja zewnętrznych drzew pakietów
- Przepływ pracy dla developerów aplikacji
- Jak korzystać z lokalnego katalogu źródłowego
- Nadpisywanie instrukcji budowania
- Debugowanie aplikacji
- Przyspieszanie przebudów
- Przeglądanie logów budowania
- Rozwiązywanie typowych problemów z kompilacją krzyżową
- Jak pisać własne oprogramowanie, aby było przyjazne dla kompilatorów krzyżowych
- Przepływ pracy dla developerów jądra
- Jak jądro uruchamia się na systemie wbudowanym
- Zmiana opcji konfiguracyjnych i dodawanie łat
- Mechanizmy ładowania modułów
- Tworzenie gotowego produktu
- Uruchamianie demonów podczas startu
- Dostarczanie niestandardowych plików konfiguracyjnych
- Dostępne mechanizmy aktualizacji firmware
- Aktualizacja do nowej wersji Buildroot
- Przestrzeganie licencji open-source
Wymagania
- Uczestnik musi przynajmniej raz skompilować jądro dla tradycyjnego systemu Linux na komputerze stacjonarnym (nie wbudowanym).
- Wie, z jakich komponentów składa się przestrzeń użytkownika Linux na systemie stacjonarnym.
- Wie, jak generować i stosować łaty.
- Musi umieć wyjaśnić, czym są GNU Make, Autotools oraz jakie istnieją inne systemy budowania.
- Najlepiej, aby uczestnik zarządzał przynajmniej jednym pakietem Linux, czy to jako autor upstream, czy w dowolnej tradycyjnej dystrybucji Linux na komputerze stacjonarnym.
- Doświadczenie w rozwoju systemów wbudowanych nie jest wymagane i nie zastępuje wiedzy o tradycyjnych systemach Linux na komputerach stacjonarnych, określonej powyżej.
7 godzin