0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

泰凌微电子Zephyr编译环境搭建

泰凌微电子 来源:泰凌微电子 2023-01-30 11:28 次阅读

如上文所介绍,Telink Zephyr是由社区的Zephyr仓库fork而来的,用于维护我们在社区的内容,并开发新的功能。若要查看 Telink Zephyr 最新的开发内容,可以查看位于GitHub上telink-semi的Zephyr仓库的develop 分支:

https://github.com/telink-semi/zephyr

目前,Telink Zephyr基于社群有以下两个Zephyr版本:

telink_matter_v1.0-branch分支,它不低于Zephyr 3.0.0,不高于Zephyr 3.1.99,需要安装并适配社群的zephyr-0.13.2或者zephyr-0.14.2工具链;

以及develop和telink_matter分支,当前基于的是Zephyr3.2.99,必须安装并适配社群的zephyr-0.15.2-sdk工具链。

之所以会存在两个Zephyr版本,是为了满足对Matter项目的开发与应用的需求。比如,telink_matter_v1.0-branch分支保留了对Matter V1.0 Release的版本(即v1.0-branch分支)的支持,并且不断进行bugfix,让设备厂商们可以比较稳定地用于模组、设备和产品上的应用开发。而telink_matter分支是紧跟Matter V1.1版本(即connectedhomeip的master分支)的开发而不断更新的。由于Matter的新版本将于今年的Q1~Q2进行release,因此,上述分支的更新和修改较为频繁,适合对尝试Matter新特性有兴趣的开发者

接下来,将先后介绍两者的编译环境的配置步骤。

适配Matter V1.0-branch分支的Telink Zephyr

配置步骤

配置Telink Zephyr的telink_matter_v1.0-branch分支的过程和社群3.0.0版本的的Getting Started Guide相似,但不完全相同。在进行配置之前,首先确认系统版本为 Ubuntu 20.04LTS,并执行APT更新和升级:

$ sudo apt update

$ sudo apt upgrade

1、安装Zephyr工程所需的依赖项

$ wget https://apt.kitware.com/kitware-archive.sh

$ sudo bash kitware-archive.sh

$ 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

在进行下一步前请确认依赖项的版本已经达到或高于Zephyr所需的最小版本:

CMake (3.20.0),

$ cmake --version

Python3 (3.6),

$ python3 --version

Devicetree compiler (1.4.6).

$ dtc --version

2、安装Zephyr的west多仓库管理工具

$ pip3 install --user -U west

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

$ source ~/.bashrc

确认 ~/.local/bin 在 $PATH 环境变量上

3、获取Zephyr源码与配置工程

$ west init -m https://github.com/telink-semi/zephyr --mr telink_matter_v1.0-branch ~/zephyrproject

注意:此处-m参数是指定了从Telink的zephyr仓库进行拉取,-mr参数指定了将要拉取的分支名,为telink_matter_v1.0-branch。

$ cd ~/zephyrproject

$ west update

注意:在切换zephyr仓库分支时,请记得执行update指令以更新其他关联的仓库。

$ west zephyr-export

4、为Zephyr安装额外的Python依赖项

$ pip3 install --user -r ~/zephyrproject/zephyr/scripts/requirements.txt

5、安装社区v0.13.2版本工具链

下载Zephyr工具链(1.2GB)到本地目录。

$cd ~

$ wget https://github.com/zephyrproject-rtos/sdk-ng/releases/download/v0.13.2/zephyr-sdk-0.13.2-linux-x86_64-setup.run

$ chmod +x zephyr-sdk-0.13.2-linux-x86_64-setup.run

$ ./zephyr-sdk-0.13.2-linux-x86_64-setup.run -- -d ~/zephyr-sdk-0.13.2

注意:在安装完成以后您不能直接移动这个SDK。若想要挪动到其他路径,请将安装后的文件夹移动过去,并重新使用zephyr-sdk-0.13.2-linux-x86_64-setup.run进行配置。

6、验证配置是否完成

$ cd ~/zephyrproject/

$ west build -p auto -b tlsr9518adk80d zephyr/samples/hello_world -d build_helloWorld

这一步可以尝试编译hello_world示例,构建出的二进制文件zephyr.bin将会生成在build_helloWorld/zephyr文件夹中。

7、 配置Zephyr环境的脚本

若想要在zephyrproject文件夹外,比如Matter工程路径中执行west build命令,需要配置Zephyr的环境:

$ source ~/zephyrproject/zephyr/zephyr-env.sh

建议将以上配置加入shell的配置文件中自启动:

$ echo "source ~/zephyrproject/zephyr/zephyr-env.sh" >> ~/.bashrc

然后执⾏以下命令让 shell 环境⽴刻更新:

$ source ~/.bashrc

适配Matter master分支的Telink Zephyr

配置步骤

配置Telink Zephyr的telink_matter分支的过程和社群latest版本(3.2.99)的Getting Started Guide相似,但不完全相同。在进行配置之前,依然要确认系统版本为 Ubuntu 20.04LTS,并执行APT更新和升级:

$ sudo apt update

$ sudo apt upgrade

1、安装Zephyr工程所需的依赖项

$ wget https://apt.kitware.com/kitware-archive.sh

$ sudo bash kitware-archive.sh

$ 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

在进行下一步前请确认依赖项的版本已经达到或高于Zephyr所需的最小版本:

CMake (3.20.0),

Python3 (3.8),

Devicetree compiler (1.4.6).

2、安装Zephyr的west多仓库管理工具

$ pip3 install --user -U west

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

$ source ~/.bashrc

确认 ~/.local/bin 在 $PATH 环境变量上

3、获取Zephyr源码与配置工程

$ west init -m https://github.com/telink-semi/zephyr --mr telink_matter ~/zephyrproject

注意:此处-m参数是指定了从Telink的zephyr仓库进行拉取,-mr参数指定了将要拉取的分支名,为telink_matter。若有需要,也可以换成develop分支以检查最新特性。

$ cd ~/zephyrproject

$ west update

注意:在切换zephyr仓库分支时,请记得执行update指令以更新其他关联的仓库。

$ west blobs fetch hal_telink

注意:该命令将会更新我们公司的HAL仓库,适用于develop和telink_matter分支。

$ west zephyr-export

4、为Zephyr安装额外的Python依赖项

$ pip3 install --user -r ~/zephyrproject/zephyr/scripts/requirements.txt

5、安装社区v0.13.2版本工具链

下载Zephyr工具链(1.6GB)到本地目录。

$cd ~

$ wget https://github.com/zephyrproject-rtos/sdk-ng/releases/download/v0.15.2/zephyr-sdk-0.15.2_linux-x86_64.tar.gz

$ wget -O - https://github.com/zephyrproject-rtos/sdk-ng/releases/download/v0.15.2/sha256.sum | shasum --check --ignore-missing

$ tar xvf zephyr-sdk-0.15.2_linux-x86_64.tar.gz

$ zephyr-sdk-0.15.2

$ ./setup.sh -t riscv64-zephyr-elf -h -c

注意:在安装完成以后您不能直接移动这个SDK。若想要挪动到其他路径,请将安装后的文件夹移动过去,并重新使用./setup.sh进行配置。

6、验证配置是否完成

$ cd ~/zephyrproject/

$ west build -p auto -b tlsr9518adk80d zephyr/samples/hello_world -d build_helloWorld

这一步可以尝试编译hello_world示例,构建出的二进制文件zephyr.bin将会生成在build_helloWorld/zephyr文件夹中。

7、配置Zephyr环境的脚本

若想要在zephyrproject文件夹外,比如Matter工程路径中执行west build命令,需要配置Zephyr的环境:

$ source ~/zephyrproject/zephyr/zephyr-env.sh

建议将以上配置加入shell的配置文件中自启动:

$ echo "source ~/zephyrproject/zephyr/zephyr-env.sh" >> ~/.bashrc

然后执⾏以下命令让 shell 环境⽴刻更新:

$ source ~/.bashrc

审核编辑:汤梓红
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 编译
    +关注

    关注

    0

    文章

    646

    浏览量

    32694
  • 环境搭建
    +关注

    关注

    0

    文章

    53

    浏览量

    9030
  • GitHub
    +关注

    关注

    3

    文章

    461

    浏览量

    16264
  • Zephyr
    +关注

    关注

    0

    文章

    16

    浏览量

    5940
  • Matter
    +关注

    关注

    1

    文章

    206

    浏览量

    4806

原文标题:【技术专栏】泰凌微电子Zephyr编译环境搭建

文章出处:【微信号:telink-semi,微信公众号:泰凌微电子】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    微电子产测工具使用—如何增加GPIO测试功能

    微电子的产测工具默认提供了多个产测固件,比如测试射频RF,测试低功耗电流,这些属于前置测试,即测试PCBA硬件是否存在异常。
    的头像 发表于 01-03 09:04 662次阅读
    <b class='flag-5'>泰</b><b class='flag-5'>凌</b><b class='flag-5'>微电子</b>产测工具使用—如何增加GPIO测试功能

    微TLSR9系列开发套件试用体验】Zephyr环境验证TLSR9518ADK80D Blinky

    zephyr环境搭建和TLSR9基于zephyr环境测试两部分。一、TLSR9基于zephyr
    发表于 07-06 22:01

    微TLSR9系列开发套件试用体验】Zephyr编译环境搭建

    什么是Zephyrzephyr操作系统是一个用于资源受限和嵌入式系统的小型内核(出自名门),针对的应用场景,从简单的嵌入式环境传感器和可穿戴设备到复杂的嵌入式控制器、智能手表和物联网无线应用程序
    发表于 07-08 10:25

    基于微电子平台实现OpenHarmony开发—综述

    ,其中包括微电子基于TLSR9系列芯片的B91通用开发套件(B91 Generic Starter Kit)。 该套件是一个可用于评估TLSR9系列芯片组的硬件平台,可用于开发BLE,BLE
    发表于 02-22 10:42

    射频芯片厂商:微电子(上海)有限公司简介

    微电子有限公司成立于2010年,在美国、上海、深圳、台湾和香港均设有公司/分支机构。微电子
    的头像 发表于 04-02 11:38 3097次阅读

    Zephyr v2.6.0下如何搭建esp32的编译调试环境

    。 2018年的时候已经在esp32上面跑过zephyr,时隔久远,编译调试的环境已经有变化,本文记录Zephyr v2.6.0下如何搭建e
    的头像 发表于 05-24 11:23 3090次阅读

    微TLSR9系列开发套件试用体验】Zephyr编译环境搭建

    本文来源电子发烧友社区,作者:efans_190a9a, 帖子地址: https://bbs.elecfans.com/jishu_2292095_1_1.html 什么是Zephyr
    的头像 发表于 11-16 16:07 1228次阅读
    【<b class='flag-5'>泰</b><b class='flag-5'>凌</b>微TLSR9系列开发套件试用体验】<b class='flag-5'>Zephyr</b><b class='flag-5'>编译</b><b class='flag-5'>环境</b><b class='flag-5'>搭建</b>

    微电子Zephyr硬件平台及编译步骤

    当Telink Zephyr环境配置成功并且验证完成之后,便需要明确适用的硬件平台,选择想要尝试的Zephyr例程去进行编译。接下来,将先简要介绍适用于Telink
    的头像 发表于 02-06 15:41 2185次阅读

    微电子Zephyr固件下载及示例程序

    在了解适用于Telink Zephyr的B91开发板和如何使用West相关的命令去编译Zephyr应用之后,让我们重温一下将固件下载到开发板上的方法和步骤,并且了解一些配件的连接和使用方式,正式开始体验
    的头像 发表于 02-10 11:29 2905次阅读

    基于微电子平台实现OpenHarmony开发——编译环境搭建

    在获取OpenHarmony源码进行开发之前,首先要配置好编译环境,本文主要详细介绍开发所需环境并安装编译开发环境所需的一系列工具。
    的头像 发表于 02-22 10:10 1729次阅读

    微电子无线通信SoC助推电子纸产业生态发展

    “第二届电子纸产业生态发展高峰论坛”在上海宝山圆满落幕。此次盛会汇聚了业界领袖和专家,共同探讨和分享电子纸产业的最新发展动态。作为领先的电子货架标签终端主控SoC供应商,
    的头像 发表于 05-25 16:41 1026次阅读

    Windows搭建OpenHarmony编译环境

    对OpenHarmony编译呢?答案是:可以。所以,我们今天来尝试在Windows环境搭建OpenHarmony编译环境。本次OpenHa
    的头像 发表于 08-09 08:26 1370次阅读
    Windows<b class='flag-5'>搭建</b>OpenHarmony<b class='flag-5'>编译</b><b class='flag-5'>环境</b>

    【技术专栏】微电子产测工具使用——常见问题解决方法(二)

    1 关于产测工具的连载文章 【技术专栏】微电子产测工具使用方式一 【技术专栏】微电子产测
    的头像 发表于 10-25 16:15 894次阅读
    【技术专栏】<b class='flag-5'>泰</b><b class='flag-5'>凌</b><b class='flag-5'>微电子</b>产测工具使用——常见问题解决方法(二)

    3568编译环境搭建

    主要介绍如何在本地搭建编译环境编译rockchipBBuildrootllinuxSDK的源代码。d当前sdk只支持在linux环境
    发表于 12-13 11:23 18次下载

    一图读懂微电子2023年年度报告

    一图读懂微电子2023年年度报告
    的头像 发表于 05-22 10:30 361次阅读
    一图读懂<b class='flag-5'>泰</b><b class='flag-5'>凌</b><b class='flag-5'>微电子</b>2023年年度报告