【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
  • 例程编译测试结果
相关推荐
CheungChunChiu2 小时前
Linux 内核设备模型与驱动框架解析 ——以 rk-pcie 为例
linux·运维·ubuntu
姚不倒3 小时前
负载均衡的概念、策略以及两个核心组件 Nginx 和 Kube-proxy 的对比。
运维·nginx·云原生·kubernetes
列逍3 小时前
Linux进程(三)
linux·运维·服务器·环境变量·命令行参数
水天需0104 小时前
VS Code Ctrl+Shift+V 预览 Markdown 无效的解决方案
linux
赖small强6 小时前
【Linux C/C++开发】Linux 平台 Stack Protector 机制深度解析
linux·c语言·c++·stack protector·stack-protector·金丝雀机制
陌路207 小时前
Linux42 守护进程
linux
liteblue7 小时前
DEB包解包与打包笔记
linux·笔记
minji...7 小时前
Linux 基础IO(一) (C语言文件接口、系统调用文件调用接口open,write,close、文件fd)
linux·运维·服务器·网络·数据结构·c++
赖small强7 小时前
【Linux内存管理】Linux虚拟内存系统详解
linux·虚拟内存·tlb
码龄3年 审核中7 小时前
Linux record 04
linux·运维·服务器