1. 搭建Zephyr开发环境

搭建Zephyr开发环境 学习卡片

任务目标

在本机搭建完整的Zephyr RTOS开发环境:安装依赖包、获取Zephyr源码与SDK、配置west工作区,最终编译并运行hello_world示例,确认工具链与构建系统工作正常。

环境需求

  • Ubuntu 22.04(或等效Linux发行版),x86_64架构
  • 已安装Python 3.10+、pip、git、cmake(≥3.20)、dtc(device tree compiler)
  • 目标板:QEMU模拟的x86开发板(无需真实硬件)

安装步骤

1. 安装系统依赖

sudo apt update
sudo apt install --no-install-recommends git cmake ninja-build gperf \
  ccache dfu-util device-tree-compiler wget \
  python3-dev python3-pip python3-setuptools python3-tk \
  xz-utils file make gcc gcc-multilib g++-multilib libsdl2-dev libmagic1

2. 安装west与Zephyr源码

pip3 install --user west
export PATH=~/.local/bin:$PATH
cd ~
west init zephyrproject
cd zephyrproject
west update

3. 安装Zephyr SDK

cd ~
wget https://github.com/zephyrproject-rtos/sdk-ng/releases/download/v0.16.8/zephyr-sdk-0.16.8_linux-x86_64.tar.xz
tar xf zephyr-sdk-0.16.8_linux-x86_64.tar.xz
cd zephyr-sdk-0.16.8
./setup.sh -t all -h -c

4. 配置环境变量

将以下内容追加到~/.bashrc:

export ZEPHYR_TOOLCHAIN_VARIANT=zephyr
export ZEPHYR_SDK_INSTALL_DIR=~/zephyr-sdk-0.16.8
export PATH=~/.local/bin:$PATH
source ~/zephyrproject/zephyr/zephyr-env.sh

执行source ~/.bashrc使配置生效。

编译hello_world

cd ~/zephyrproject/zephyr
west build -b qemu_x86 samples/hello_world

构建产物位于build/zephyr/zephyr.elf。若构建成功,终端末尾会显示Generating files from ...且无错误退出。

运行与验证

west build -t run

该命令启动QEMU模拟器。预期输出(与代码逻辑严格对应):

*** Booting Zephyr OS build v3.7.0 ***
Hello World! qemu_x86

看到上述两行输出即表示环境搭建成功,工具链、构建系统与模拟器均工作正常。按Ctrl+A后按X退出QEMU。

常见问题

  • west命令找不到:确认~/.local/bin已加入PATH,或重新登录终端。
  • SDK setup失败:确认已安装libsdl2-dev,且setup.sh使用-c参数仅安装命令行工具。
  • 编译报错缺少dtc:执行sudo apt install device-tree-compiler后重试。