[分享] Matter开发指南(四):Matter编译环境搭建

okhxyyo   2022-9-7 10:13 楼主

在构建Matter固件,体验Telink Matter应用之前,需要先把Matter工程的编译环境准备好,接下去会详细介绍搭建Matter编译环境的步骤(注意,需要在Linux环境下进行)。

 

获取Matter源码

 

 

01 安装依赖项

 

在从Github上拉取Matter项目之前,首先需要安装依赖项,在shell中输入以下命令:

 

$ sudo apt-get install git gcc g++ python 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

 

02 克隆Matter项目

 

将Matter项目克隆到本地目录,例如/home/${YOUR_USERNAME}/workspace/matter,在shell中输入以下命令:

 

$ git clone https://github.com/project-chip/connectedhomeip

 

注意,需要将里面的 ${YOUR_USERNAME} 替换为您的用户名文件夹

 

03 更新子模块

 

需要进入上一步克隆的Matter项目根目录中进行操作,在shell中输入以下命令:

 

$ cd ./connectedhomeip

$ git submodule update --init --recursive

 

Docker镜像安装

 

 

Matter应用是基于Zephyr实时操作系统实现的,因此在配置Matter项目前,需要提前配置Zephyr工程以及Telink的工具链,但是手动配置Zephyr环境以及配置Telink工具链所需要执行的步骤众多,容易出错,同时耗费的时间较长。因此,我们提供了Docker镜像,方便获取 Matter工程所需要的Zephyr环境。用户只需拉取并运行现有的Docker镜像即可。

 

 

01 获取 Docker 镜像

 

在shell中输入以下命令:

 

$ sudo docker pull connectedhomeip/chip-build-telink

 

02 运行 Docker 容器

 

使用以下命令来运行 Docker 容器:

 

$ sudo docker run -it --rm -v ${MATTER_BASE}:/root/chip -v /dev/bus/usb:/dev/bus/usb --device-cgroup-rule "c 189:* rmw" connectedhomeip/chip-build-telink

 

其中的 ${MATTER_BASE} 是 Matter 项目根目录的绝对路径,例如:

 

/home/${YOUR_USERNAME}/connectedhomeip

 

其中 connectedhomeip 是Matter项目文件夹的名称。

 

此处使用的命令会将 Matter 项目根目录映射到 Docker 容器中的 /root/chip,因此即使退出容器,您也会得到生成的 bin 文件。

 

Docker 容器启动后,请通过以下命令进入当前 Matter 根目录:

 

$ cd /root/chip

 

03 运行引导程序

 

执行 bootstrap,准备 Matter 的环境,第一次运行通常需要很长时间。

 

$ source scripts/bootstrap.sh

 

需要注意的是,每次切换 commit、改变环境都要重新运行引导程序。

 

此步骤将生成一个在 Matter 根目录 connectedhomeip 下的叫做 .environment 的隐藏文件夹。

如果 Matter 构建环境有任何问题,您可以尝试:

 

1. 移除环境(在 Matter 项目的根目录中):

    $ rm -rf .environment

 

2. 再次重做引导程序:

    $ source scripts/bootstrap.sh

 

如果以上步骤都没有任何问题,那么到这里Matter的编译环境就搭建好了。

玩板看这里: https://bbs.eeworld.com.cn/elecplay.html EEWorld测评频道众多好板等你来玩,还可以来频道许愿树许愿说说你想要玩的板子,我们都在努力为大家实现!

回复评论

暂无评论,赶紧抢沙发吧
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 京公网安备 11010802033920号
    写回复