Google は、黒人コミュニティのための人種的公平の促進に取り組んでいます。詳細をご覧ください。

OpenThreadを構築する

GitHubでソースを表示

OpenThreadを構築する方法

OpenThreadを構築する手順は、ツールチェーン、ユーザーマシン、およびターゲットプラットフォームによって異なります。

最も一般的なワークフローは次のとおりです。

  1. ビルド環境をセットアップし、目的のツールチェーンをインストールします。
    1. マシン上で直接ビルドするには、詳細な手順についてシミュレーションコードラボを参照してください
    2. 事前構成された環境でDockerコンテナーを使用するには、OpenThread environmentイメージをダウンロードして実行しenvironment
      docker pull openthread/environment:latest
      docker run -it --rm openthread/environment bash
      
  2. 選択した環境内で、プラットフォーム固有のOpenThreadGitリポジトリのクローンを作成します。例としてCC2538を取り上げます:
    git clone https://github.com/openthread/ot-cc2538.git --recursive
    
  3. 複製されたリポジトリのルートディレクトリから:
    1. ツールチェーンをインストールします:
      ./script/bootstrap
      
    2. 構成をビルドします:
      ./script/build platform-specific-args cmake-options
      
  4. 目的のバイナリをターゲットプラットフォームにフラッシュします。生成されたすべてのバイナリは./build/binます。

構成

ビルドプロセス中に、さまざまな機能と動作のためにOpenThreadを構成できます。使用可能な構成オプションの詳細は、次の場所にあります。

タイプロケーション
コンパイル時定数/src/core/configすべてのヘッダーファイルにリストされています
cmakeビルドオプションopenthread/examples/README.mdリストされていopenthread/examples/README.md

ビルド例

プラットフォームの機能を有効にするには、cmakeビルドオプションを使用します。たとえば、コミッショナーとジョイナーのサポートが有効になっているCC2538プラットフォームのバイナリをビルドするには、次のようにします。

./script/build -DOT_COMMISSIONER=ON -DOT_JOINER=ON

または、リポジトリで紙詰まり検出機能を有効にしてnRF52840プラットフォームを構築するには:

./script/build nrf52840 UART_trans -DOT_JAM_DETECTION=ON

バイナリ

次のバイナリは、ビルドプロセスから./build/bin生成されます。生成されるバイナリを判別するには、。 ./script/buildコマンドでフラグを使用します。たとえば、OpenThreadをビルドし、FTDCLIバイナリのみを生成するには次のようにします。

./script/build -DOT_APP_CLI=ON -DOT_FTD=ON -DOT_MTD=OFF -DOT_APP_NCP=OFF -DOT_APP_RCP=OFF -DOT_RCP=OFF
バイナリ説明オプション
ot-cli-ftd SoC設計用のフルスレッドデバイス-DOT_APP_CLI=ON
-DOT_FTD=ON
ot-cli-mtd SoC設計用の最小スレッドデバイス-DOT_APP_CLI=ON
-DOT_MTD=ON
ot-ncp-ftdネットワークコプロセッサー(NCP)設計用のフルスレッドデバイス-DOT_APP_NCP=ON
-DOT_FTD=ON
ot-ncp-mtd NCP設計用の最小スレッドデバイス-DOT_APP_NCP=ON
-DOT_MTD=ON
ot-rcp無線コプロセッサー(RCP)の設計-DOT_APP_RCP=ON
-DOT_RCP=ON

デフォルトでは、上記のすべてのフラグが有効になっています。すべてのフラグを明示的に無効にすると、アプリケーションはビルドされませんが、プロジェクトで使用するためにOpenThreadライブラリファイルが./build/libに生成されます。

各プラットフォームのMakefileの例をチェックして、各プラットフォームがサポートするフラグを確認してください。 FTDおよびMTDの詳細については、スレッド入門書を参照してください。 SoCおよびNCP設計の詳細については、プラットフォームを参照してください。

これらのバイナリをフラッシュするプロセスは、プラットフォームの例によって異なります。詳細な手順については、各プラットフォームのサンプルフォルダにあるREADMEを参照してください。

OpenThreadデーモン

OpenThreadデーモン(OTデーモン)は、OpenThreadをサービスとして実行し、RCP設計で使用されるOpenThreadPOSIXビルドモードです。ビルドおよび使用方法の詳細については、 OpenThreadデーモンを参照してください。

サポートパッケージを作成する

ビルドサポートパッケージ(BSP)は/third_partyます。 BSPは、それぞれのプラットフォームでOpenThreadによって使用される追加のサードパーティコードであり、通常、 OpenThreadを新しいハードウェアプラットフォームに移植するときに含まれます。