在Debian12安装zephyr

此安装教程基于zephyr 3.4.99

更新系统之前,最好把源换为换为国内的,减少花费的时间

更新系统

sudo apt update && sudo apt upgrade -y

安装依赖项

当前主要依赖项所需的最低版本为:

工具最低版本
Cmake3.20.5
Python3.8
设备树编译器1.4.6

1.安装所需的依赖项:

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 python3-wheel xz-utils file \
  make gcc gcc-multilib g++-multilib libsdl2-dev libmagic1

2.通过输入以下内容验证系统上安装的主要依赖项的版本:

cmake --version
python3 --version
dtc --version

获取 Zephyr 并安装 Python 依赖项

这里采用全局安装

1.安装west

pip install --user -U west --break-system-packages

2.为west设置PATH

echo 'export PATH=~/.local/bin:"$PATH"' >> ~/.bashrc
source ~/.bashrc

3.获取 Zephyr 源代码

west init ~/zephyrproject
cd ~/zephyrproject
west update

注意:west update可能无法直接更新 ,需要使用相关网络技术。

4.导出 Zephyr CMake 包。这允许CMake能够 自动加载构建 Zephyr 所需的样板代码 应用

west zephyr-export

5.Zephyr的文件声明了额外的Python 依赖。使用 .scripts/requirements.txt pip

pip install --user -r ~/zephyrproject/zephyr/scripts/requirements.txt --break-system-packages

下载Zephyr SDK

Zephyr 软件开发工具包 (SDK) 包含 Zephyr 支持的每种体系结构的工具链,其中包括编译器、汇编器、链接器和构建 Zephyr 应用程序所需的其他程序。

1.下载并验证 Zephyr SDK

cd ~
wget https://github.com/zephyrproject-rtos/sdk-ng/releases/download/v0.16.3/zephyr-sdk-0.16.3_linux-x86_64.tar.xz
wget -O - https://github.com/zephyrproject-rtos/sdk-ng/releases/download/v0.16.1/sha256.sum | shasum --check --ignore-missing

2.提取 Zephyr SDK 捆绑包存档

tar xvf zephyr-sdk-0.16.3_linux-x86_64.tar.xz

3.运行 Zephyr SDK 捆绑包设置脚本

cd zephyr-sdk-0.16.3
./setup.sh

4.安装 udev 规则,其中 允许以普通用户身份刷新大多数 Zephyr 开发板:

sudo cp ~/zephyr-sdk-0.16.3/sysroots/x86_64-pokysdk-linux/usr/share/openocd/contrib/60-openocd.rules /etc/udev/rules.d
sudo udevadm control --reload

初次编译闪灯例子

这里以nrf52840dk_nrf52840开发板编译,如果不知道手上的开发板是否已经支持,可通过west boards查询

cd ~/zephyrproject/zephyr
west build -p always -b nrf52840dk_nrf52840 samples/basic/blinky
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值