• 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安装到用户目录optzephyr-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 对版本有要求

     





  • 相关阅读:
    Oracle ORA-01033: ORACLE initialization or shutdown in progress 错误解决办法
    Oracle用imp导入dmp 提示遇到 ORACLE 错误 12560 TNS: 协议适配器错误 解决方法
    Oracle恢复误删除表操作语句
    DevExpress GridControl使用方法总结
    PL/SQL Developer 中的问题:Initialization error Could not load ".../oci.dll"解决方法
    Oracle中查询当前数据库中的所有表空间和对应的数据文件语句命令
    [PHP]利用XAMPP搭建本地服务器, 然后利用iOS客户端上传数据到本地服务器中(三. PHP端代码实现)
    [iOS]ios archives 出现的是other items而不是iOS Apps的解决方案
    [PHP]利用XAMPP搭建本地服务器, 然后利用iOS客户端上传数据到本地服务器中(二.配置MySQL数据库)
    [软件]XAMPP错误解决
  • 原文地址:https://www.cnblogs.com/yuqilihualuo/p/9497891.html
Copyright © 2020-2023  润新知