Das Seminar vertieft die technische Grundlage jedes PTXdist-Builds: Cross-Toolchain und Sysroots. Compiler, Binutils, C-Bibliothek, ABI, pkg-config, Hostwerkzeuge und Zielbibliotheken werden klar getrennt. Externe Toolchains, SDKs und typische Fehlerbilder werden praktisch untersucht.
Inhaltsverzeichnis
- Einordnung und Zielbild
- Zielgruppe
- Voraussetzungen
- Lernziele
- Thematische Module
- Toolchain-Bestandteile und Zieltuple
- ABI, CPU und Gleitkomma
- Host-, Cross- und Target-Sysroots
- Compiler- und Linkersuchpfade
- pkg-config im Cross-Build
- Externe Toolchain integrieren
- SDK und Entwicklungsübergabe
- Fehleranalyse und Reproduzierbarkeit
- Praxisarbeiten
- Qualitätssicherung
Einordnung und Zielbild
Das Seminar vertieft die technische Grundlage jedes PTXdist-Builds: Cross-Toolchain und Sysroots. Compiler, Binutils, C-Bibliothek, ABI, pkg-config, Hostwerkzeuge und Zielbibliotheken werden klar getrennt. Externe Toolchains, SDKs und typische Fehlerbilder werden praktisch untersucht.
Zielgruppe
Embedded-Linux-Entwickler, BSP-Entwickler, Paketmaintainer, Build-Engineers und Integratoren mit Bedarf an tieferem Cross-Compilation-Verständnis.
Voraussetzungen
Linux-Shell, grundlegende C- und Compilerkenntnisse sowie erste Erfahrung mit PTXdist oder einem vergleichbaren Cross-Buildsystem.
Lernziele
- Bestandteile, Zieltuple und ABI einer Cross-Toolchain beurteilen.
- Host-, Cross- und Target-Sysroot ohne Pfadvermischung einsetzen.
- Compiler-, Linker- und pkg-config-Aufrufe nachvollziehen.
- Externe Toolchains und SDK-Ausgaben kontrolliert integrieren.
- Architektur-, ABI-, Header-, Bibliotheks- und Laufzeitfehler diagnostizieren.
Thematische Module
1. Toolchain-Bestandteile und Zieltuple
Dieser Baustein behandelt Compiler, Assembler, Linker, Binutils, C-Bibliothek, Architektur, Hersteller, System, ABI und Testobjekt. Die Bearbeitung folgt einer festen Reihenfolge aus Bestandsaufnahme, deklarativer Änderung, gezieltem Build, Artefaktprüfung und reproduzierbarer Verifikation.
- Ausgangsstand und technische Randbedingungen für Compiler, Assembler, Linker, Binutils, C-Bibliothek, Architektur, Hersteller, System, ABI und Testobjekt erfassen.
- Tatsächlich verwendete Werkzeuge, Zieltuple, Suchpfade und wirksame Plattformoptionen aus Konfiguration und Buildlog bestimmen.
- Host-, Cross- und Target-Bestandteile trennen und nicht deklarierte Pfade oder Architekturvermischungen entfernen.
- Eine minimale Konfigurations- oder Abhängigkeitsänderung umsetzen und die betroffene Komponente gezielt neu bauen.
- Binärformat, Symbole, Interpreter, Bibliotheksabhängigkeiten und Laufzeitverhalten am erzeugten Artefakt prüfen.
- Den Kontrollpunkt für Compiler, Assembler, Linker, Binutils, C-Bibliothek, Architektur, Hersteller, System, ABI und Testobjekt mit einem klaren Sollzustand und einem reproduzierbaren Test festlegen.
- Die verwendeten Eingaben, Konfigurationsstände, Kommandos und erzeugten Artefakte für Review und Wiederholung dokumentieren.
2. ABI, CPU und Gleitkomma
Dieser Baustein behandelt CPU-Familie, Instruktionssatz, Endianness, Wortbreite, Floating-Point-ABI, Compilerflags und inkompatible Objekte. Die Bearbeitung folgt einer festen Reihenfolge aus Bestandsaufnahme, deklarativer Änderung, gezieltem Build, Artefaktprüfung und reproduzierbarer Verifikation.
- Ausgangsstand und technische Randbedingungen für CPU-Familie, Instruktionssatz, Endianness, Wortbreite, Floating-Point-ABI, Compilerflags und inkompatible Objekte erfassen.
- Tatsächlich verwendete Werkzeuge, Zieltuple, Suchpfade und wirksame Plattformoptionen aus Konfiguration und Buildlog bestimmen.
- Host-, Cross- und Target-Bestandteile trennen und nicht deklarierte Pfade oder Architekturvermischungen entfernen.
- Eine minimale Konfigurations- oder Abhängigkeitsänderung umsetzen und die betroffene Komponente gezielt neu bauen.
- Binärformat, Symbole, Interpreter, Bibliotheksabhängigkeiten und Laufzeitverhalten am erzeugten Artefakt prüfen.
- Den Kontrollpunkt für CPU-Familie, Instruktionssatz, Endianness, Wortbreite, Floating-Point-ABI, Compilerflags und inkompatible Objekte mit einem klaren Sollzustand und einem reproduzierbaren Test festlegen.
- Die verwendeten Eingaben, Konfigurationsstände, Kommandos und erzeugten Artefakte für Review und Wiederholung dokumentieren.
3. Host-, Cross- und Target-Sysroots
Dieser Baustein behandelt Ausführungsort, Header, Bibliotheken, Programme, Architekturkontrolle, Pfadvermischung und klare Zuständigkeit. Die Bearbeitung folgt einer festen Reihenfolge aus Bestandsaufnahme, deklarativer Änderung, gezieltem Build, Artefaktprüfung und reproduzierbarer Verifikation.
- Ausgangsstand und technische Randbedingungen für Ausführungsort, Header, Bibliotheken, Programme, Architekturkontrolle, Pfadvermischung und klare Zuständigkeit erfassen.
- Tatsächlich verwendete Werkzeuge, Zieltuple, Suchpfade und wirksame Plattformoptionen aus Konfiguration und Buildlog bestimmen.
- Host-, Cross- und Target-Bestandteile trennen und nicht deklarierte Pfade oder Architekturvermischungen entfernen.
- Eine minimale Konfigurations- oder Abhängigkeitsänderung umsetzen und die betroffene Komponente gezielt neu bauen.
- Binärformat, Symbole, Interpreter, Bibliotheksabhängigkeiten und Laufzeitverhalten am erzeugten Artefakt prüfen.
- Den Kontrollpunkt für Ausführungsort, Header, Bibliotheken, Programme, Architekturkontrolle, Pfadvermischung und klare Zuständigkeit mit einem klaren Sollzustand und einem reproduzierbaren Test festlegen.
- Die verwendeten Eingaben, Konfigurationsstände, Kommandos und erzeugten Artefakte für Review und Wiederholung dokumentieren.
4. Compiler- und Linkersuchpfade
Dieser Baustein behandelt Include-Suche, Bibliothekssuche, Linkeraufruf, RPATH, Interpreter, dynamische Abhängigkeiten und Paketabhängigkeit. Die Bearbeitung folgt einer festen Reihenfolge aus Bestandsaufnahme, deklarativer Änderung, gezieltem Build, Artefaktprüfung und reproduzierbarer Verifikation.
- Ausgangsstand und technische Randbedingungen für Include-Suche, Bibliothekssuche, Linkeraufruf, RPATH, Interpreter, dynamische Abhängigkeiten und Paketabhängigkeit erfassen.
- Tatsächlich verwendete Werkzeuge, Zieltuple, Suchpfade und wirksame Plattformoptionen aus Konfiguration und Buildlog bestimmen.
- Host-, Cross- und Target-Bestandteile trennen und nicht deklarierte Pfade oder Architekturvermischungen entfernen.
- Eine minimale Konfigurations- oder Abhängigkeitsänderung umsetzen und die betroffene Komponente gezielt neu bauen.
- Binärformat, Symbole, Interpreter, Bibliotheksabhängigkeiten und Laufzeitverhalten am erzeugten Artefakt prüfen.
- Den Kontrollpunkt für Include-Suche, Bibliothekssuche, Linkeraufruf, RPATH, Interpreter, dynamische Abhängigkeiten und Paketabhängigkeit mit einem klaren Sollzustand und einem reproduzierbaren Test festlegen.
- Die verwendeten Eingaben, Konfigurationsstände, Kommandos und erzeugten Artefakte für Review und Wiederholung dokumentieren.
5. pkg-config im Cross-Build
Dieser Baustein behandelt pc-Datei, Ziel-Sysroot, Suchpfad, Include-Flags, Linkerflags, Hostdatei und deklarierte Lieferabhängigkeit. Die Bearbeitung folgt einer festen Reihenfolge aus Bestandsaufnahme, deklarativer Änderung, gezieltem Build, Artefaktprüfung und reproduzierbarer Verifikation.
- Ausgangsstand und technische Randbedingungen für pc-Datei, Ziel-Sysroot, Suchpfad, Include-Flags, Linkerflags, Hostdatei und deklarierte Lieferabhängigkeit erfassen.
- Tatsächlich verwendete Werkzeuge, Zieltuple, Suchpfade und wirksame Plattformoptionen aus Konfiguration und Buildlog bestimmen.
- Host-, Cross- und Target-Bestandteile trennen und nicht deklarierte Pfade oder Architekturvermischungen entfernen.
- Eine minimale Konfigurations- oder Abhängigkeitsänderung umsetzen und die betroffene Komponente gezielt neu bauen.
- Binärformat, Symbole, Interpreter, Bibliotheksabhängigkeiten und Laufzeitverhalten am erzeugten Artefakt prüfen.
- Den Kontrollpunkt für pc-Datei, Ziel-Sysroot, Suchpfad, Include-Flags, Linkerflags, Hostdatei und deklarierte Lieferabhängigkeit mit einem klaren Sollzustand und einem reproduzierbaren Test festlegen.
- Die verwendeten Eingaben, Konfigurationsstände, Kommandos und erzeugten Artefakte für Review und Wiederholung dokumentieren.
6. Externe Toolchain integrieren
Dieser Baustein behandelt Archivstruktur, Toolpräfix, Compiler, Sysroot, C-Bibliothek, Plattformauswahl, Referenzpaket und Gesamtbuild. Die Bearbeitung folgt einer festen Reihenfolge aus Bestandsaufnahme, deklarativer Änderung, gezieltem Build, Artefaktprüfung und reproduzierbarer Verifikation.
- Ausgangsstand und technische Randbedingungen für Archivstruktur, Toolpräfix, Compiler, Sysroot, C-Bibliothek, Plattformauswahl, Referenzpaket und Gesamtbuild erfassen.
- Tatsächlich verwendete Werkzeuge, Zieltuple, Suchpfade und wirksame Plattformoptionen aus Konfiguration und Buildlog bestimmen.
- Host-, Cross- und Target-Bestandteile trennen und nicht deklarierte Pfade oder Architekturvermischungen entfernen.
- Eine minimale Konfigurations- oder Abhängigkeitsänderung umsetzen und die betroffene Komponente gezielt neu bauen.
- Binärformat, Symbole, Interpreter, Bibliotheksabhängigkeiten und Laufzeitverhalten am erzeugten Artefakt prüfen.
- Den Kontrollpunkt für Archivstruktur, Toolpräfix, Compiler, Sysroot, C-Bibliothek, Plattformauswahl, Referenzpaket und Gesamtbuild mit einem klaren Sollzustand und einem reproduzierbaren Test festlegen.
- Die verwendeten Eingaben, Konfigurationsstände, Kommandos und erzeugten Artefakte für Review und Wiederholung dokumentieren.
7. SDK und Entwicklungsübergabe
Dieser Baustein behandelt Compiler, Header, Bibliotheken, Metadaten, SDK-Artefakt, Umgebungsskript, Pfadisolation und Beispielanwendung. Die Bearbeitung folgt einer festen Reihenfolge aus Bestandsaufnahme, deklarativer Änderung, gezieltem Build, Artefaktprüfung und reproduzierbarer Verifikation.
- Ausgangslage, Randbedingungen und erwarteten Sollzustand für Compiler, Header, Bibliotheken, Metadaten, SDK-Artefakt, Umgebungsskript, Pfadisolation und Beispielanwendung erfassen.
- Relevante PTXdist-Konfigurationen, Regeln, Patches, Abhängigkeiten und Ergebnisartefakte zuordnen.
- Änderung in kleine, überprüfbare Arbeitsschritte zerlegen und den ersten Schritt kontrolliert umsetzen.
- Betroffene Komponente gezielt bauen und Logs sowie erzeugte Dateien auf Abweichungen prüfen.
- Funktion im Zielsystem oder in einer isolierten Testumgebung verifizieren und den Stand reproduzierbar sichern.
- Den Kontrollpunkt für Compiler, Header, Bibliotheken, Metadaten, SDK-Artefakt, Umgebungsskript, Pfadisolation und Beispielanwendung mit einem klaren Sollzustand und einem reproduzierbaren Test festlegen.
- Die verwendeten Eingaben, Konfigurationsstände, Kommandos und erzeugten Artefakte für Review und Wiederholung dokumentieren.
8. Fehleranalyse und Reproduzierbarkeit
Dieser Baustein behandelt vollständiger Befehl, Architektur, ABI, Symbole, Hostpfade, Konfigurationskorrektur und sauberer Rebuild. Die Bearbeitung folgt einer festen Reihenfolge aus Bestandsaufnahme, deklarativer Änderung, gezieltem Build, Artefaktprüfung und reproduzierbarer Verifikation.
- Fehlerbild, Ausgangsstand, Reproduktionskommando und Erfolgskriterium für vollständiger Befehl, Architektur, ABI, Symbole, Hostpfade, Konfigurationskorrektur und sauberer Rebuild festhalten.
- Erste abweichende Buildstufe, Bootübergabe, Datei, Meldung oder Laufzeitbeobachtung bestimmen.
- Hypothese durch genau eine kontrollierte Änderung prüfen und betroffene Komponente gezielt neu bauen.
- Logs, Umgebung, Binärartefakte und Zielzustand vor und nach der Änderung vergleichen.
- Bestätigte Ursache mit minimaler Korrektur, Positivtest, Negativtest und Regressionstest absichern.
- Den Kontrollpunkt für vollständiger Befehl, Architektur, ABI, Symbole, Hostpfade, Konfigurationskorrektur und sauberer Rebuild mit einem klaren Sollzustand und einem reproduzierbaren Test festlegen.
- Die verwendeten Eingaben, Konfigurationsstände, Kommandos und erzeugten Artefakte für Review und Wiederholung dokumentieren.
Praxisarbeiten
- Analyse einer Cross-Toolchain und ihres Zieltuples.
- Untersuchung der drei Sysroot-Bereiche.
- Behebung eines pkg-config- oder Linkerfehlers.
- Integration einer vorbereiteten externen Toolchain.
- Erzeugung und Test eines kleinen SDK-Workflows.
Qualitätssicherung
Die Bearbeitung wird anhand eindeutiger Eingaben, nachvollziehbarer Konfigurationsänderungen, gezielter Builds, geprüfter Artefakte, dokumentierter Tests und eines sauberen Wiederholungsbuilds bewertet.
Fachbereichsleitung / Trainerteam / Ansprechpersonen
-

Lucas Beich
Telefon: + 49 (221) 74740055
E-Mail: lucas.beich@seminar-experts.de
Seminardetails
| Dauer: | 2 Tage ca. 6 h/Tag, Beginn 1. Tag: 10:00 Uhr, weitere Tage 09:00 Uhr |
| Preis: |
Öffentlich oder Live Stream: € 1.198 zzgl. MwSt. Inhaus: € 3.400 zzgl. MwSt. |
| Teilnehmeranzahl: | min. 2 - max. 8 |
| Teilnehmer: | Embedded-Linux-Entwickler, BSP-Entwickler, Paketmaintainer, Build-Engineers und Integratoren mit Bedarf an tieferem Cross-Compilation-Verständnis. |
| Voraussetzungen: | Linux-Shell, grundlegende C- und Compilerkenntnisse sowie erste Erfahrung mit PTXdist oder einem vergleichbaren Cross-Buildsystem. |
| Standorte: | Stream Live, Inhaus/Firmenseminar, Berlin, Bremen, Darmstadt, Dresden, Erfurt, Essen, Flensburg, Frankfurt, Freiburg, Friedrichshafen, Hamburg, Hamm, Hannover, Jena, Kassel, Köln, Konstanz, Leipzig, Luxemburg, Magdeburg, Mainz, München, Münster, Nürnberg, Paderborn, Potsdam, Regensburg, Rostock, Stuttgart, Trier, Ulm, Wuppertal, Würzburg |
| Methoden: | Vortrag, Demonstrationen, praktische Übungen am System |
| Seminararten: | Öffentlich, Webinar, Inhaus, Workshop - Alle Seminare mit Trainer vor Ort, Webinar nur wenn ausdrücklich gewünscht |
| Durchführungsgarantie: | ja, ab 2 Teilnehmern |
| Sprache: | Deutsch - bei Firmenseminaren ist auch Englisch möglich |
| Seminarunterlage: | Dokumentation auf Datenträger oder als Download |
| Teilnahmezertifikat: | ja, selbstverständlich |
| Verpflegung: | Kalt- / Warmgetränke, Mittagessen (wahlweise vegetarisch) |
| Support: | 3 Anrufe im Seminarpreis enthalten |
| Barrierefreier Zugang: | an den meisten Standorten verfügbar |
| Weitere Informationen unter + 49 (221) 74740055 |
Seminartermine
Die Ergebnissliste kann durch Anklicken der Überschrift neu sortiert werden.
