Google setzt sich dafür ein, die Rassengerechtigkeit für schwarze Gemeinschaften zu fördern. Siehe wie.
Diese Seite wurde von der Cloud Translation API übersetzt.
Switch to English

Erstellen Sie OpenThread

Werkzeugketten

Die primär unterstützte Toolchain zum Erstellen von OpenThread ist GNU Autotools.

GNU Autotools

Anweisungen zum Erstellen von Beispielen mit GNU Autotools finden Sie im Plattformordner jedes Beispiels. Beachten Sie, dass in diesen Beispielen der minimale Code angezeigt werden soll, der zum Ausführen von OpenThread auf der jeweiligen Plattform erforderlich ist. Daher heben sie nicht die vollen Funktionen der Plattform hervor.

Abhängig von Ihrem Anwendungsfall kann eine weitere Konfiguration während der Erstellung erforderlich sein.

GNU Autotools - Nest Labs bauen

Nest Labs hat ein angepasstes, schlüsselfertiges Build-System-Framework erstellt, das auf GNU Autotools basiert. Dies wird für eigenständige Softwarepakete verwendet, die Folgendes unterstützen müssen:

  • Aufbauend auf und gezielt gegen eigenständige Build-Host-Systeme
  • eingebettete Zielsysteme mit GCC-basierten oder kompatiblen Toolchains

Der Nest Labs-Build von GNU Autotools wird für die Verwendung mit OpenThread empfohlen, da einige Build-Host-Systeme möglicherweise nicht über GNU Autotools oder unterschiedliche Versionen und Distributionen verfügen. Dies führt zu einer inkonsistenten primären und sekundären Autotools-Ausgabe, was zu einer unterschiedlichen Benutzer- und Supporterfahrung führt. Der Nest Labs-Build vermeidet dies, indem er einen vorgefertigten, qualifizierten Satz von GNU-Autotools mit zugehörigen Skripten bereitstellt, die nicht auf den Versionen von Autotools auf dem Build-Hostsystem basieren.

Dieses Projekt wird normalerweise in einem Zielprojekt-Repository untergeordnet (oder git-submoduliert) und dient als Startwert für das Build-System dieses Projekts.

Weitere Informationen oder die Verwendung dieses Tools für Ihre OpenThread-Builds finden Sie in der README Datei.

So erstellen Sie OpenThread

Die Schritte zum Erstellen von OpenThread variieren je nach Toolchain, Benutzercomputer und Zielplattform.

Der häufigste Workflow ist:

  1. Richten Sie die Build-Umgebung ein und installieren Sie die gewünschte Toolchain:
    1. Ausführliche Anweisungen zum direkten Aufbau auf einer Maschine finden Sie im Simulationscodelab
    2. Laden Sie das OpenThread- environment herunter und führen Sie es aus, um einen Docker-Container mit einer vorkonfigurierten environment :
       docker pull openthread/environment:latest
      docker run -it --rm openthread/environment bash 
  2. Klonen Sie in der von Ihnen ausgewählten Umgebung das OpenThread Git-Repository:
     git clone https://github.com/openthread/openthread 
  3. Aus dem Stammverzeichnis des geklonten Repositorys:
    1. Installieren Sie die GNU-Toolchain und andere Abhängigkeiten (optional):
       ./script/bootstrap 
    2. Richten Sie die Umgebung ein:
       ./bootstrap 
    3. Konfigurieren und erstellen Sie anhand vordefinierter Plattformbeispiele mit optionaler Anpassung über allgemeine Switches:
      1. Ändern Sie die OpenThread-Konstanten für die Kompilierungszeit in der Datei /examples/platforms/ <platform> /openthread-core- <platform> -config.h der ausgewählten Plattform
      2. Erstellen Sie die Konfiguration:
         make -f examples/Makefile- <platform> <switches> 
  4. Flashen Sie die gewünschte Binärdatei auf die Zielplattform. Alle generierten Binärdateien befinden sich in /output/ <platform> /bin . Bei Verwendung des erweiterten Modus kann die <platform> spezifisch für den Computer des Benutzers sein. Zum Beispiel x86_64-apple-darwin .

Spezifische Anweisungen zum Erstellen unterstützter Plattformen mit GNU Autotools finden Sie im Plattformordner jedes Beispiels.

Aufbau

Sie können OpenThread während des Erstellungsprozesses für verschiedene Funktionen und Verhaltensweisen konfigurieren. Die verfügbaren Konfigurationsoptionen sind an folgenden Stellen aufgeführt:

Art Ort
Konstanten zur Kompilierungszeit Wird in allen Header-Dateien in /src/core/config
Makefile-Build-Schalter Gelistet in /examples/common-switches.mk

Erstellen Sie Beispiele

Verwenden Sie einen Schalter, um die Funktionalität für eine Beispielplattform zu aktivieren. So erstellen Sie beispielsweise das CC2538-Beispiel mit aktivierter Unterstützung für Kommissare und Tischler:

 make -f examples/Makefile-cc2538 COMMISSIONER=1 JOINER=1 

Oder das nRF52840 Beispiel bauen mit der Jam - Erkennungsfunktion aktiviert:

 make -f examples/Makefile-nrf52840 JAM_DETECTION=1 

Binärdateien

Die folgenden Binärdateien werden in /output/ <platform> /bin aus dem Erstellungsprozess generiert. Um zu bestimmen, welche Binärdateien generiert werden, verwenden Sie Konfigurationsoptionsflags mit dem Befehl ./configure , um ein aktualisiertes Makefile zum ./configure zu generieren. So erstellen Sie beispielsweise OpenThread und generieren nur die CLI-Binärdateien:

 ./configure --enable-cli
make 
Binär Beschreibung Konfigurieren Sie Optionsflags
ot-cli-ftd Full Thread-Gerät für SoC-Designs --enable-cli
--enable-ftd
ot-cli-mtd Minimal Thread-Gerät für SoC-Designs --enable-cli
--enable-mtd
ot-ncp-ftd Full Thread-Gerät für NCP-Designs --enable-ncp
--enable-ftd
ot-ncp-mtd Minimal Thread-Gerät für NCP-Designs --enable-ncp
--enable-mtd
ot-rcp Host / 802.15.4 Controller-Design --enable-ncp
--enable-radio-only

Wenn weder diese Flags noch ein Plattformbeispiel verwendet werden, werden keine Anwendungen erstellt, aber OpenThread-Bibliotheksdateien werden weiterhin in /output/ <platform> /lib zur Verwendung in einem Projekt generiert.

Überprüfen Sie das Beispiel-Makefiles für jede Plattform, um festzustellen, welche Flags jede Plattform unterstützt. Beispielsweise unterstützt der TI CC2650 keine FTDs . Weitere Informationen zu FTDs und MTDs finden Sie im Thread Primer . Weitere Informationen zu SoC- und NCP-Designs finden Sie unter Plattformen .

Der Vorgang zum Flashen dieser Binärdateien variiert je nach Beispielplattform. Ausführliche Anweisungen finden Sie in den READMEs im Beispielordner jeder Plattform.

Erstellen Sie Support Packages

Build Support Packages (BSPs) finden Sie in /third_party . BSPs sind zusätzlicher Code von Drittanbietern, der von OpenThread auf der jeweiligen Plattform verwendet wird und im Allgemeinen beim Portieren von OpenThread auf eine neue Hardwareplattform enthalten ist.