Mem-build OpenThread

Lihat sumber di GitHub

Cara membuat OpenThread

Langkah-langkah untuk membangun OpenThread bervariasi, bergantung pada toolchain, mesin pengguna, dan platform target.

Alur kerja yang paling umum adalah:

  1. Siapkan lingkungan build dan instal toolchain yang diinginkan:
    1. Untuk membangun langsung di mesin, lihat Codelab Simulasi untuk mengetahui petunjuk selengkapnya
    2. Untuk menggunakan container Docker dengan lingkungan yang telah dikonfigurasi sebelumnya, download dan jalankan image OpenThread environment:
      docker pull openthread/environment:latest
      docker run -it --rm openthread/environment bash
      
  2. Dalam lingkungan yang Anda pilih, clone repositori Git OpenThread khusus platform. Mengambil CC2538 sebagai contoh:
    git clone https://github.com/openthread/ot-cc2538.git --recursive
    
  3. Dari direktori root repositori yang di-clone:
    1. Instal toolchain:
      ./script/bootstrap
      
    2. Bangun konfigurasi:
      ./script/build platform-specific-args cmake-options
      
  4. Flash biner yang diinginkan ke platform target. Semua biner yang dihasilkan berada di ./build/bin.

Konfigurasi

Anda dapat mengonfigurasi OpenThread untuk fungsi dan perilaku yang berbeda selama proses build. Opsi konfigurasi yang tersedia dijelaskan di lokasi berikut:

Jenis Lokasi
Konstanta waktu kompilasi Dicantumkan di semua file header di /src/core/config
Opsi build cmake Terdaftar di /etc/cmake/options.cmake

Contoh pembuatan

Gunakan opsi build cmake untuk mengaktifkan fungsi platform. Misalnya, untuk membangun biner untuk platform CC2538 dengan mengaktifkan dukungan Commissioner dan Joiner:

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

Atau, untuk membangun platform nRF52840 dengan fitur Deteksi Jam yang diaktifkan di repositorinya:

./script/build nrf52840 UART_trans -DOT_JAM_DETECTION=ON

Biner

Biner berikut dibuat di ./build/bin dari proses build. Untuk menentukan biner mana yang dihasilkan, gunakan flag dengan perintah ./script/build. Misalnya, untuk membuat OpenThread dan hanya membuat biner CLI FTD:

./script/build -DOT_APP_CLI=ON -DOT_FTD=ON -DOT_MTD=OFF -DOT_APP_NCP=OFF -DOT_APP_RCP=OFF -DOT_RCP=OFF
Biner Deskripsi Opsi
ot-cli-ftd Perangkat Thread lengkap untuk desain SoC -DOT_APP_CLI=ON
-DOT_FTD=ON
ot-cli-mtd Perangkat Thread minimal untuk desain SoC -DOT_APP_CLI=ON
-DOT_MTD=ON
ot-ncp-ftd Perangkat Thread lengkap untuk desain Network Co-Processor (NCP) -DOT_APP_NCP=ON
-DOT_FTD=ON
ot-ncp-mtd Perangkat Thread minimal untuk desain NCP -DOT_APP_NCP=ON
-DOT_MTD=ON
ot-rcp Desain Radio Co-Processor (RCP) -DOT_APP_RCP=ON
-DOT_RCP=ON

Secara default, semua tanda di atas diaktifkan. Jika Anda secara eksplisit menonaktifkan semua tanda, aplikasi tidak dibuat, tetapi file library OpenThread tetap dibuat di ./build/lib untuk digunakan dalam project.

Periksa direktori examples/platforms untuk melihat tanda yang didukung setiap platform. Untuk mengetahui informasi selengkapnya tentang FTD dan MTD, lihat Thread Primer. Untuk informasi selengkapnya tentang desain SoC dan NCP, lihat Platform.

Proses untuk mem-flash biner ini bervariasi di berbagai platform contoh. Lihat README di folder contoh setiap platform untuk mengetahui petunjuk mendetail.

Daemon OpenThread

OpenThread Daemon (OT Daemon) adalah mode build POSIX OpenThread yang menjalankan OpenThread sebagai layanan dan digunakan dengan desain RCP. Untuk mengetahui informasi selengkapnya tentang cara membangun dan menggunakannya, lihat Daemon OpenThread.

Membangun Paket Dukungan

Paket Dukungan Build (BSP) dapat ditemukan di /third_party. BSP adalah kode pihak ketiga tambahan yang digunakan oleh OpenThread di setiap platform masing-masing, yang umumnya disertakan saat mem-porting OpenThread ke platform hardware baru.