Google se compromete a impulsar la igualdad racial para las comunidades afrodescendientes. Obtén información al respecto.

Cómo compilar OpenThread

Ver el código fuente en GitHub

Cómo compilar OpenThread

Los pasos para compilar OpenThread varían según la cadena de herramientas, la máquina del usuario y la plataforma de destino.

El flujo de trabajo más común es el siguiente:

  1. Configura el entorno de compilación e instala la cadena de herramientas deseada:
    1. Si quieres compilar directamente en una máquina, consulta el Codelab de simulación para obtener instrucciones detalladas.
    2. Para usar un contenedor de Docker con un entorno preconfigurado, descarga y ejecuta la imagen environment de OpenThread:
      docker pull openthread/environment:latest
      docker run -it --rm openthread/environment bash
      
  2. Dentro del entorno elegido, clona el repositorio de Git de OpenThread específico de la plataforma. Tomando CC2538 como ejemplo:
    git clone https://github.com/openthread/ot-cc2538.git --recursive
    
  3. Desde el directorio raíz del repositorio clonado:
    1. Instala la cadena de herramientas:
      ./script/bootstrap
      
    2. Compila la configuración:
      ./script/build platform-specific-args cmake-options
      
  4. Escribe en la memoria flash el objeto binario deseado en la plataforma de destino. Todos los objetos binarios generados se encuentran en ./build/bin.

Configuración

Puedes configurar OpenThread para diferentes funcionalidades y comportamientos durante el proceso de compilación. Las opciones de configuración disponibles se detallan en las siguientes ubicaciones:

Tipo Ubicación
Constantes de tiempo de compilación Aparece en todos los archivos de encabezado de /src/core/config
Opciones de compilación de CMake Tiene el valor openthread/examples/README.md

Ejemplos de compilación

Usa las opciones de compilación de CMake para habilitar la funcionalidad de la plataforma. Por ejemplo, a fin de compilar el objeto binario para la plataforma CC2538 con la compatibilidad de Commissioner y Joiner habilitada, haz lo siguiente:

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

También puedes compilar la plataforma nRF52840 con la función de detección de Jam habilitada en su repositorio:

./script/build nrf52840 UART_trans -DOT_JAM_DETECTION=ON

Objetos binarios

Los siguientes objetos binarios se generan en ./build/bin a partir del proceso de compilación. Para determinar qué objetos binarios se generan, usa marcas con el comando ./script/build. Por ejemplo, para compilar OpenThread y generar solo el objeto binario de la CLI de FTD:

./script/build -DOT_APP_CLI=ON -DOT_FTD=ON -DOT_MTD=OFF -DOT_APP_NCP=OFF -DOT_APP_RCP=OFF -DOT_RCP=OFF
Binaria Descripción Opciones
ot-cli-ftd Dispositivo Thread completo para diseños de SoC -DOT_APP_CLI=ON
-DOT_FTD=ON
ot-cli-mtd Dispositivo Thread mínimo para diseños de SoC -DOT_APP_CLI=ON
-DOT_MTD=ON
ot-ncp-ftd Diseño de dispositivo Thread completo para diseños de coprocesador de red (NCP) -DOT_APP_NCP=ON
-DOT_FTD=ON
ot-ncp-mtd Dispositivo Thread mínimo para diseños NCP -DOT_APP_NCP=ON
-DOT_MTD=ON
ot-rcp Diseño de coprocesador de radio (RCP) -DOT_APP_RCP=ON
-DOT_RCP=ON

De forma predeterminada, todas las marcas anteriores están habilitadas. Si inhabilitas todas las marcas de forma explícita, las aplicaciones no se compilan, pero los archivos de la biblioteca de OpenThread se generan en ./build/lib para su uso en un proyecto.

Consulta los ejemplos de archivos Make en cada plataforma para ver qué marcas admite cada plataforma. Para obtener más información sobre FTD y MTD, consulta el Primer Thread. Para obtener más información sobre los diseños de SoC y NCP, consulta Plataformas.

El proceso de escritura en la memoria flash de estos objetos binarios varía según las plataformas de ejemplo. Consulta el archivo README de la carpeta de ejemplo de cada plataforma para obtener instrucciones detalladas.

daemon de OpenThread

OpenThread Daemon (OT Daemon) es un modo de compilación POSIX de OpenThread que ejecuta OpenThread como servicio y se usa con el diseño de RCP. Para obtener más información sobre cómo compilar y usar la herramienta, consulta OpenThread Daemon.

Crea paquetes de asistencia

Puedes encontrar los paquetes de asistencia de compilación (BSP) en /third_party. Los BSP son códigos de terceros adicionales que utiliza OpenThread en cada plataforma respectiva, que generalmente se incluye al portar OpenThread a una nueva plataforma de hardware.