0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

泰凌微電子Zephyr編譯環(huán)境搭建

泰凌微電子 ? 來源:泰凌微電子 ? 2023-01-30 11:28 ? 次閱讀

如上文所介紹,Telink Zephyr是由社區(qū)的Zephyr倉庫fork而來的,用于維護我們在社區(qū)的內(nèi)容,并開發(fā)新的功能。若要查看 Telink Zephyr 最新的開發(fā)內(nèi)容,可以查看位于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分支,當(dāng)前基于的是Zephyr3.2.99,必須安裝并適配社群的zephyr-0.15.2-sdk工具鏈。

之所以會存在兩個Zephyr版本,是為了滿足對Matter項目的開發(fā)與應(yīng)用的需求。比如,telink_matter_v1.0-branch分支保留了對Matter V1.0 Release的版本(即v1.0-branch分支)的支持,并且不斷進行bugfix,讓設(shè)備廠商們可以比較穩(wěn)定地用于模組、設(shè)備和產(chǎn)品上的應(yīng)用開發(fā)。而telink_matter分支是緊跟Matter V1.1版本(即connectedhomeip的master分支)的開發(fā)而不斷更新的。由于Matter的新版本將于今年的Q1~Q2進行release,因此,上述分支的更新和修改較為頻繁,適合對嘗試Matter新特性有興趣的開發(fā)者。

接下來,將先后介紹兩者的編譯環(huán)境的配置步驟。

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

配置步驟

配置Telink Zephyr的telink_matter_v1.0-branch分支的過程和社群3.0.0版本的的Getting Started Guide相似,但不完全相同。在進行配置之前,首先確認(rèn)系統(tǒng)版本為 Ubuntu 20.04LTS,并執(zhí)行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

在進行下一步前請確認(rèn)依賴項的版本已經(jīng)達到或高于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

確認(rèn) ~/.local/bin 在 $PATH 環(huán)境變量上

3、獲取Zephyr源碼與配置工程

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

注意:此處-m參數(shù)是指定了從Telink的zephyr倉庫進行拉取,-mr參數(shù)指定了將要拉取的分支名,為telink_matter_v1.0-branch。

$ cd ~/zephyrproject

$ west update

注意:在切換zephyr倉庫分支時,請記得執(zhí)行update指令以更新其他關(guān)聯(lián)的倉庫。

$ west zephyr-export

4、為Zephyr安裝額外的Python依賴項

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

5、安裝社區(qū)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示例,構(gòu)建出的二進制文件zephyr.bin將會生成在build_helloWorld/zephyr文件夾中。

7、 配置Zephyr環(huán)境的腳本

若想要在zephyrproject文件夾外,比如Matter工程路徑中執(zhí)行west build命令,需要配置Zephyr的環(huán)境:

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

建議將以上配置加入shell的配置文件中自啟動:

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

然后執(zhí)?以下命令讓 shell 環(huán)境?刻更新:

$ source ~/.bashrc

適配Matter master分支的Telink Zephyr

配置步驟

配置Telink Zephyr的telink_matter分支的過程和社群latest版本(3.2.99)的Getting Started Guide相似,但不完全相同。在進行配置之前,依然要確認(rèn)系統(tǒng)版本為 Ubuntu 20.04LTS,并執(zhí)行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

在進行下一步前請確認(rèn)依賴項的版本已經(jīng)達到或高于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

確認(rèn) ~/.local/bin 在 $PATH 環(huán)境變量上

3、獲取Zephyr源碼與配置工程

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

注意:此處-m參數(shù)是指定了從Telink的zephyr倉庫進行拉取,-mr參數(shù)指定了將要拉取的分支名,為telink_matter。若有需要,也可以換成develop分支以檢查最新特性。

$ cd ~/zephyrproject

$ west update

注意:在切換zephyr倉庫分支時,請記得執(zhí)行update指令以更新其他關(guān)聯(lián)的倉庫。

$ 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、安裝社區(qū)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示例,構(gòu)建出的二進制文件zephyr.bin將會生成在build_helloWorld/zephyr文件夾中。

7、配置Zephyr環(huán)境的腳本

若想要在zephyrproject文件夾外,比如Matter工程路徑中執(zhí)行west build命令,需要配置Zephyr的環(huán)境:

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

建議將以上配置加入shell的配置文件中自啟動:

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

然后執(zhí)?以下命令讓 shell 環(huán)境?刻更新:

$ source ~/.bashrc

審核編輯:湯梓紅
聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 編譯
    +關(guān)注

    關(guān)注

    0

    文章

    646

    瀏覽量

    32668
  • 環(huán)境搭建
    +關(guān)注

    關(guān)注

    0

    文章

    53

    瀏覽量

    9027
  • GitHub
    +關(guān)注

    關(guān)注

    3

    文章

    461

    瀏覽量

    16234
  • Zephyr
    +關(guān)注

    關(guān)注

    0

    文章

    16

    瀏覽量

    5940
  • Matter
    +關(guān)注

    關(guān)注

    1

    文章

    204

    瀏覽量

    4622

原文標(biāo)題:【技術(shù)專欄】泰凌微電子Zephyr編譯環(huán)境搭建

文章出處:【微信號:telink-semi,微信公眾號:泰凌微電子】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏

    評論

    相關(guān)推薦

    微電子產(chǎn)測工具使用—如何增加GPIO測試功能

    微電子的產(chǎn)測工具默認(rèn)提供了多個產(chǎn)測固件,比如測試射頻RF,測試低功耗電流,這些屬于前置測試,即測試PCBA硬件是否存在異常。
    的頭像 發(fā)表于 01-03 09:04 ?650次閱讀
    <b class='flag-5'>泰</b><b class='flag-5'>凌</b><b class='flag-5'>微電子</b>產(chǎn)測工具使用—如何增加GPIO測試功能

    微TLSR9系列開發(fā)套件試用體驗】Zephyr環(huán)境驗證TLSR9518ADK80D Blinky

    zephyr環(huán)境搭建和TLSR9基于zephyr環(huán)境測試兩部分。一、TLSR9基于zephyr
    發(fā)表于 07-06 22:01

    微TLSR9系列開發(fā)套件試用體驗】Zephyr編譯環(huán)境搭建

    什么是Zephyr?zephyr操作系統(tǒng)是一個用于資源受限和嵌入式系統(tǒng)的小型內(nèi)核(出自名門),針對的應(yīng)用場景,從簡單的嵌入式環(huán)境傳感器和可穿戴設(shè)備到復(fù)雜的嵌入式控制器、智能手表和物聯(lián)網(wǎng)無線應(yīng)用程序
    發(fā)表于 07-08 10:25

    基于微電子平臺實現(xiàn)OpenHarmony開發(fā)—綜述

    ,其中包括微電子基于TLSR9系列芯片的B91通用開發(fā)套件(B91 Generic Starter Kit)。 該套件是一個可用于評估TLSR9系列芯片組的硬件平臺,可用于開發(fā)BLE,BLE
    發(fā)表于 02-22 10:42

    射頻芯片廠商:微電子(上海)有限公司簡介

    微電子有限公司成立于2010年,在美國、上海、深圳、臺灣和香港均設(shè)有公司/分支機構(gòu)。微電子
    的頭像 發(fā)表于 04-02 11:38 ?3071次閱讀

    Zephyr v2.6.0下如何搭建esp32的編譯調(diào)試環(huán)境

    。 2018年的時候已經(jīng)在esp32上面跑過zephyr,時隔久遠,編譯調(diào)試的環(huán)境已經(jīng)有變化,本文記錄Zephyr v2.6.0下如何搭建e
    的頭像 發(fā)表于 05-24 11:23 ?3031次閱讀

    微TLSR9系列開發(fā)套件試用體驗】Zephyr編譯環(huán)境搭建

    本文來源電子發(fā)燒友社區(qū),作者:efans_190a9a, 帖子地址: https://bbs.elecfans.com/jishu_2292095_1_1.html 什么是Zephyr
    的頭像 發(fā)表于 11-16 16:07 ?1208次閱讀
    【<b class='flag-5'>泰</b><b class='flag-5'>凌</b>微TLSR9系列開發(fā)套件試用體驗】<b class='flag-5'>Zephyr</b><b class='flag-5'>編譯</b><b class='flag-5'>環(huán)境</b><b class='flag-5'>搭建</b>

    微電子Zephyr硬件平臺及編譯步驟

    當(dāng)Telink Zephyr環(huán)境配置成功并且驗證完成之后,便需要明確適用的硬件平臺,選擇想要嘗試的Zephyr例程去進行編譯。接下來,將先簡要介紹適用于Telink
    的頭像 發(fā)表于 02-06 15:41 ?2140次閱讀

    微電子Zephyr固件下載及示例程序

    在了解適用于Telink Zephyr的B91開發(fā)板和如何使用West相關(guān)的命令去編譯Zephyr應(yīng)用之后,讓我們重溫一下將固件下載到開發(fā)板上的方法和步驟,并且了解一些配件的連接和使用方式,正式開始體驗
    的頭像 發(fā)表于 02-10 11:29 ?2810次閱讀

    基于微電子平臺實現(xiàn)OpenHarmony開發(fā)——編譯環(huán)境搭建

    在獲取OpenHarmony源碼進行開發(fā)之前,首先要配置好編譯環(huán)境,本文主要詳細(xì)介紹開發(fā)所需環(huán)境并安裝編譯開發(fā)環(huán)境所需的一系列工具。
    的頭像 發(fā)表于 02-22 10:10 ?1690次閱讀

    微電子無線通信SoC助推電子紙產(chǎn)業(yè)生態(tài)發(fā)展

    “第二屆電子紙產(chǎn)業(yè)生態(tài)發(fā)展高峰論壇”在上海寶山圓滿落幕。此次盛會匯聚了業(yè)界領(lǐng)袖和專家,共同探討和分享電子紙產(chǎn)業(yè)的最新發(fā)展動態(tài)。作為領(lǐng)先的電子貨架標(biāo)簽終端主控SoC供應(yīng)商,
    的頭像 發(fā)表于 05-25 16:41 ?1012次閱讀

    Windows搭建OpenHarmony編譯環(huán)境

    對OpenHarmony編譯呢?答案是:可以。所以,我們今天來嘗試在Windows環(huán)境搭建OpenHarmony編譯環(huán)境。本次OpenHa
    的頭像 發(fā)表于 08-09 08:26 ?1325次閱讀
    Windows<b class='flag-5'>搭建</b>OpenHarmony<b class='flag-5'>編譯</b><b class='flag-5'>環(huán)境</b>

    【技術(shù)專欄】微電子產(chǎn)測工具使用——常見問題解決方法(二)

    1 關(guān)于產(chǎn)測工具的連載文章 【技術(shù)專欄】微電子產(chǎn)測工具使用方式一 【技術(shù)專欄】微電子產(chǎn)測
    的頭像 發(fā)表于 10-25 16:15 ?848次閱讀
    【技術(shù)專欄】<b class='flag-5'>泰</b><b class='flag-5'>凌</b><b class='flag-5'>微電子</b>產(chǎn)測工具使用——常見問題解決方法(二)

    3568編譯環(huán)境搭建

    主要介紹如何在本地搭建編譯環(huán)境編譯rockchipBBuildrootllinuxSDK的源代碼。d當(dāng)前sdk只支持在linux環(huán)境
    發(fā)表于 12-13 11:23 ?18次下載

    一圖讀懂微電子2023年年度報告

    一圖讀懂微電子2023年年度報告
    的頭像 發(fā)表于 05-22 10:30 ?338次閱讀
    一圖讀懂<b class='flag-5'>泰</b><b class='flag-5'>凌</b><b class='flag-5'>微電子</b>2023年年度報告