OpenThread 빌드 방법
OpenThread를 빌드하는 단계는 도구 모음, 사용자 머신, 대상 플랫폼에 따라 다릅니다.
가장 일반적인 워크플로는 다음과 같습니다.
- 빌드 환경을 설정하고 원하는 도구 모음을 설치합니다.
- 머신에서 직접 빌드하려면 시뮬레이션 Codelab에서 자세한 안내를 확인하세요.
- 사전 구성된 환경에서 Docker 컨테이너를 사용하려면 OpenThread
environment
이미지를 다운로드하여 실행합니다.docker pull openthread/environment:latest
docker run -it --rm openthread/environment bash
- 선택한 환경 내에서 플랫폼별 OpenThread Git 저장소를 클론합니다. CC2538의 예:
git clone https://github.com/openthread/ot-cc2538.git --recursive
- 클론된 저장소의 루트 디렉터리에서 다음을 실행합니다.
- 도구 모음
를 설치합니다../script/bootstrap
구성을 구성합니다../script/build platform-specific-args cmake-options
- 도구 모음
- 원하는 바이너리를 대상 플랫폼에 플래시합니다. 생성된 모든 바이너리는
./build/bin
에 있습니다.
구성
빌드 프로세스 중에 다양한 기능과 동작에 맞게 OpenThread를 구성할 수 있습니다. 사용 가능한 구성 옵션은 다음 위치에 자세히 나와 있습니다.
유형 | 위치 |
---|---|
컴파일 시간 상수 | /src/core/config 의 모든 헤더 파일에 나열됨 |
cmake 빌드 옵션 | openthread/examples/README.md 에 포함됨 |
빌드 예시
cmake 빌드 옵션을 사용하여 플랫폼에 기능을 사용 설정합니다. 예를 들어 CC2538 플랫폼용 바이너리를 빌드하려면 커밋러 및 조이너 지원이 사용 설정됩니다.
./script/build -DOT_COMMISSIONER=ON -DOT_JOINER=ON
또는 저장소에서 Jam Detection 기능을 사용 설정하여 nRF52840 플랫폼을 빌드하려면 다음 안내를 따르세요.
./script/build nrf52840 UART_trans -DOT_JAM_DETECTION=ON
바이너리
다음 바이너리는 빌드 프로세스에서 ./build/bin
에 생성됩니다. 생성되는 바이너리를 확인하려면 ./script/build
명령어와 함께 플래그를 사용합니다. 예를 들어 OpenThread를 빌드하고 FTD CLI 바이너리만 생성하려면 다음을 실행합니다.
./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 Daemon (OT Daemon)은 OpenThread를 서비스로 실행하는 RThread 설계와 함께 사용되는 OpenThread POSIX 빌드 모드입니다. 빌드 및 사용 방법에 관한 자세한 내용은 OpenThread Daemon을 참조하세요.
빌드 서포트 패키지
빌드 서포트 패키지 (BSP)는 /third_party
에 있습니다. BSP는 각 플랫폼에서 OpenThread가 사용하는 추가 제3자 코드이며 일반적으로 새 하드웨어 플랫폼으로 OpenThread를 포팅할 때 포함됩니다.