【Ubuntu 20.04/22.04 LTS】最新 esp-matter SDK 软件编译环境搭建步骤

环境要求

  • Ubuntu 20.04 或 Ubuntu22.04
  • 网络环境支持访问 Gihub

在安装 esp-matter SDK 软件编译环境之前,需要先安装相关工具链。

工具链安装准备:

bash 复制代码
sudo apt-get install git wget flex bison gperf python3 python3-pip python3-venv cmake ninja-build ccache libffi-dev libssl-dev dfu-util libusb-1.0-0
bash 复制代码
sudo apt-get install git gcc g++ pkg-config libssl-dev libdbus-1-dev libglib2.0-dev libavahi-client-dev ninja-build python3-venv python3-dev python3-pip unzip libgirepository1.0-dev libcairo2-dev libreadline-dev	

安装 ninja-build

bash 复制代码
sudo apt-get install ninja-build

使用 pip 安装以下 python 软件包

bash 复制代码
pip install --update pip

python -m pip install pyyaml xlrd

python -m pip --version

安装 Python3 的环境

bash 复制代码
sudo apt-get install python3.8-venv python3.8-dev

安装 curses

bash 复制代码
sudo apt-get install libncurses5-dev

esp-matter SDK 软件编译环境需要依赖 esp-idf SDK 软件编译环境。推荐基于 esp-idf SDK v5.1.2 版本来搭建 esp-matter SDK Master 版本的软件编译环境。

接下来的步骤同样适用于 macOS 10.15 及以上版本的环境。

首先,安装 esp-idf SDK v5.1.2 版本的软件编译环境:

  • 克隆 esp-idf v5.1.2 版本的 SDK
bash 复制代码
cd ~

mkdir esp

cd esp

git clone -b v5.1.2 https://github.com/espressif/esp-idf.git
bash 复制代码
cd esp-idf

git submodule update --init --recursive
  • 设置 esp-idf SDK 环境变量并安装编译工具依赖
bash 复制代码
export IDF_PATH=$(pwd)

./install.sh 

. ./export.sh

然后安装 esp-matter SDK Master 版本的软件编译环境:

bash 复制代码
cd ~/esp

git clone https://github.com/espressif/esp-matter.git
bash 复制代码
cd esp-matter

git submodule update --init --recursive

git submodule update --init --recursive -f

git pull
  • 设置 esp-matter SDK 环境变量并安装编译工具依赖
bash 复制代码
export ESP_MATTER_PATH=$(pwd)

./install.sh

cd ./connectedhomeip/connectedhomeip/scripts

source ./activate.sh

cd ../../..

. ./export.sh
  • 对例程进行编译测试
bash 复制代码
cd examples/light

rm -rf build

idf.py fullclean

idf.py set-target esp32

idf.py build
  • 例程编译测试结果
相关推荐
xz驱动分享9 分钟前
Linux DMA 子系统学习笔记
linux·dma·rk3588·嵌入式软件
w67820071 小时前
Prisma不能优雅的支持DTO,试试Vona ORM吧
linux·运维·ubuntu
APItesterCris1 小时前
Open Claw 实战教程:5 分钟搭建京东商品自动化监控与数据分析系统
大数据·运维·数据库·数据仓库·自动化
Darkwanderor2 小时前
Linux系统编程实战项目:模拟实现shell
linux·c++
杨某不才3 小时前
如何能让Linux服务器对shell 终端 + sftp 文件传输长期保活
linux·运维·服务器
vance043 小时前
免费Cloudflare隧道隐藏公网IP
linux·tcp/ip·github
三言老师4 小时前
文本工具组合统计服务器日志数据
linux·运维·服务器
m0_743697594 小时前
DNS服务器
运维·服务器
mounter6255 小时前
认识 Tetragon:基于 eBPF 的安全监控与强制执行工具
linux·ebpf·cve·kernel
aixingkong9216 小时前
AI超节点Scale Up域总线各层优化设计
linux·服务器·网络