Zephyr ubuntu 環境搭建


參考:https://blog.csdn.net/xukai871105/article/details/79284177#zephyr-%E5%BC%80%E5%8F%91%E7%8E%AF%E5%A2%83%E6%90%AD%E5%BB%BA
1.更新軟件源
sudo apt-get update
sudo apt-get upgrade

2.安裝依賴包
sudo apt-get install --no-install-recommends git cmake ninja-build gperf \
ccache doxygen dfu-util device-tree-compiler \
python3-ply python3-pip python3-setuptools xz-utils file make gcc-multilib

3.克隆zephyr代碼倉庫

把zephyr代碼克隆到用戶目錄中,例如克隆至repo/zephyr文件夾中。

mkdir -p repo cd repo git clone https://github.com/zephyrproject-rtos/zephyr

安裝必要的python3依賴工具

# 進入zephyr文件夾

cd zephyr

# 通過pip3工具安裝其他依賴項

pip3 install --user -r scripts/requirements.txt

4.安裝CMake

zephyr 的開發需要 cmake 3.8.2 或以上版本,通過 ubuntu 軟件倉庫安裝的 cmake 版本較低並不符合要求,可通過以下步驟把合適的CMake安裝到$HOME/cmake

mkdir $HOME/cmake && cd $HOME/cmake wget https://cmake.org/files/v3.8/cmake-3.8.2-Linux-x86_64.sh yes | sh cmake-3.8.2-Linux-x86_64.sh | cat

把CMake安裝目錄增加到用戶環境變量中,修改用戶目錄中的.bashrc文件的最后增加一行

export PATH=<camke install directory>/bin:$PATH

新建一個控制台,在控制台中輸入cmake --version驗證cmake工具是否安裝成功,此處CMake的版本編號為3.8.2

cmake --version

cmake version 3.8.2

5.安裝 zephyr SDK

zephyr SDK 會自動安裝被支持硬平台所依賴的編譯、下載、調試等工具。本文中使用的SDK版本為 0.9.2。安裝過程中控制台將出現Zephyr SDK安裝路徑的提示,建議把zephyr SDK安裝到用戶目錄\opt\zephyr-sdk文件夾中。

# 下載SDK

wget https://github.com/zephyrproject-rtos/meta-zephyr-sdk/releases/download/0.9.2/zephyr-sdk-0.9.2-setup.run # 安裝SDK chmod +x zephyr-sdk-0.9.2-setup.run ./zephyr-sdk-0.9.2-setup.run

設置環境變量

在用戶目錄.bashrc文件末尾再增加ZEPHYR_GCC_VARIANTZEPHYR_SDK_INSTALL_DIRZEPHYR_BASE等參數,修改完成之后在控制台執行source .bashrc,該指令可使新增加的環境變量立即生效。

cat ~/.bashrc

export PATH=<camke install directory>/bin:$PATH

export ZEPHYR_GCC_VARIANT=zephyr

export ZEPHYR_SDK_INSTALL_DIR=<zephyr-sdk directory>

export ZEPHYR_BASE=<zephyr local repository directory>

6.QEMU環境執行Hello World

完成上述安裝過程后,可以通過 hello world 示例驗證 zephyr 開發環境是否一切正常。此處使用qemu_x86仿真平台進行驗證。此處編譯生成的hello world可執行文件將運行於QEMU仿真平台。

相關文件介紹

$ZEPHYR_BASE/samples/hello_world文件夾中包含以下幾個重要文件,雖然其他的示例的功能與這個hello world 示例存在差別,但是各示例目錄的文件結構卻高度相似。
- CMakeLists.txt構建文件,用於生成makefile;
- src/main.c主函數文件;
- prj.conf配置文件

編譯與執行

通過CMake生成Makefile文件時,需要通過BOARD參數指定目標平台,此處指定為qemu_x86平台。

cd $ZEPHYR_BASE/samples/hello_world

# 新建一個build目錄,用於存放臨時文件

mkdir -p build && cd build

# 通過cmake指令生成qemu_x86平台makefile文件

cmake -DBOARD=qemu_x86 ..

# 編譯 make # 執行

make

run To exit from QEMU enter: 'CTRL+a, x' [QEMU] CPU: qemu32,+nx,+pae qemu-system-i386: warning: Unknown firmware file in legacy mode: genroms/multiboot.bin ***** BOOTING ZEPHYR OS v1.10.99 - BUILD: Jan 20 2018 09:40:00 ***** Hello World! x86


小結:zephyr SDK   cmake 對版本有要求

 






免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM