《嵌入操作系统 – Zephyr开发笔记》 第2章 Zephyr 编译环境搭建(Linux)

开发环境

主机: Ubuntu v18.04

Zephyr:V2.3.99

SDK:0.11.4

Date:2020-08-20

Zephyr 可以在 Windows/MAC/Linux 上开发,本文只介绍 Linux(云计算是对什么技术的发展和应用Ubuntu) 上的环境搭建 。

2.1安装必要工具

1.更新软件源

$sudo apt-get update

$sudo apt upgrade

2.安装依赖软件包linux

##下面是整个一条命令

$sudo apt inubuntulinux的区别stall --no-install-recommends git cmake ninja-buiubuntu是什么操作系统ld gperf ccache dfu-util device-tree-compiler wget python3-dev python3-pip python3-setuptools python3-tk python3java面试题-wheel xz-utils file make gcc gcc-multilib g+multilib libsdl2-dev

3.安装 3.13.1版本及以上 CMake 工具

Zephyr 的开发需要 cmake 3.13.1或以上版本java编译器。首openstack组件先查ubuntu看cmake版本:

$cmake --vers嵌入式系统的传统设计方法ion

通过 ubuntu 软件仓库安装的 cmake 版本较低并不符合要求,通过以下步骤安装cmake。

a.添加Kitware签名密钥:

$wgubuntu安装vsftpdet -O - https://apt.kitwarezephyr.com/keys/kitware-archive-latest.aszephyr星际战甲c 2>/dev/null | sudo apt-openstack是什么key add -


                                            《嵌入操作系统 - Zephyr开发笔记》 第2章 Zephyr 编译环境搭建(Linux)

b.添加Kitware apt存储库嵌入式系统

$sudo apt-add-repository ‘deb https://apt.klinuxitware.com/ubuntu/ bionic main’

c.然后使用apt安装更新的cmake:

$sudo apt update

$sudo apt install cmake


                                            《嵌入操作系统 - Zephyr开发笔记》 第2章 Zephyr 编译环境搭建(Linux)

再次查看cmake版本:

$cmake --version


                                            《嵌入操作系统 - Zephyr开发笔记》 第2章 Zephyr 编译环境搭建(Linux)

4.安装west工具

pipubuntu是什么操作系统3 install --user -U west


                                            《嵌入操作系统 - Zephyr开发笔记》 第2章 Zephyr 编译环境搭建(Linux)

echo ‘export PATH=~/.localinuxl/bin:"$PATH"’ &嵌入式系统是什么gt;> ~/.bashrc

source ~嵌入式系统原理与应用/.baOpenStackshrc

2.2下载Zephyr源码

1.下载zephyrproj嵌入式系统原理与应用课后答案ect源码

$west init ~/zephyrproject


                                            《嵌入操作系统 - Zephyr开发笔记》 第2章 Zephyr 编译环境搭建(Linux)

$cd ~/zephyrproject

$west update


                                            《嵌入操作系统 - Zephyr开发笔记》 第2章 Zephyr 编译环境搭建(Linux)

2.导出cmake包

$ west zephyr-export


                                            《嵌入操作系统 - Zephyr开发笔记》 第2章 Zephyr 编译环境搭建(Linux)

3.使用pip3安装其他依赖的工具包

$pip3 install --user -r ~/zephyrproject/zephyr/scriopenstack与k8s区别pts/嵌入式系统的应用requirements.txt


                                            《嵌入操作系统 - Zephyr开发笔记》 第2章 Zephyr 编译环境搭建(Linux)

2.3安装 Zephyr SDK与配置环境变量

1.下载安装Zephyr SDK

Zephyr 的 SDK 包含所有必须的工具和交叉编译器,用于支持 build 内核在不同的系统架构上。除此之外,它包括主机工具,如自定义 QEMU 二进制文件和主机编译器,如果需要的话,可以构建宿主工具。

SDK支持以下架构:

 X86
 X86 IAMCU AjavaeeBI
 ARM
 ARC
 Nios II
 Xtensa
 RISC-V

本文使用的嵌入式系统的特点 SDK 版本是0.嵌入式系统设计师11.4 ,安装过程中控制台将出现 Zephyr SDK 安装路径的提示, Zeubuntu安装phyr SDK默linux操作系统基础知识认安装到~/zephyr-sd云计算是对什么技术的发展和应用k/目录下。

##下载 SDK,如果下载过程中速度过ubuntu怎么设置中文慢,可以在浏览器中下载后拷贝到对应文件夹中

$wget https://github.co云计算是什么意思m/zephyrproject-rtos/sdk-ng/releases/download/v0.ubuntu安装11.4/zephyr-sdk-0.11.4-setup.run

##安装 SDK

$chmod +x zephyr-sdk-0.1linux必学的60个命令1.4-setup.run

$./zephy云计算的概念r-sdk-zephyr星际战甲0.11.4-setup.run (默认方式,笔者直接在安装时指定路径)

$./zephyrlinux系统-sdk-0.11.4-setup.rujava培训n – -d ~/zephyr-sdk-0.11.4


                                            《嵌入操作系统 - Zephyr开发笔记》 第2章 Zephyr 编译环境搭建(Linux)

安装udev规则,该规linux常用命令则允许您以常规用户身份刷新大多数Zephyr板:

$sudo cp ~/zephyr-sdk-0.11.4/sysroots/x86_64-pokysdk-linux/usr/share/openocd/contrib/60-openocd.rules /etc/udevlinux/rules.d

$ubuntusudopenstack组件有哪些o udevadm control --reload

2.4在 QEMU 中运行 hello world 示例程序

完成上述安装过程后,可以通过 hello world 示例验证 Zephyr 开发环境是否一切正常。此处使用 qemu_x86 仿真平台进行验ubuntu看硬件配置证。此处编译嵌入式系统设计徐灵飞课后答案生成的 hello world 可执嵌入式系统的传统设计方法行文件将运行于 QEMU 仿真平台。

在~/zephyropenstack云平台搭建project/zephyr/samples/hello_world文件夹下主要文件介绍:

 CMakeLi云计算是对什么技术的发展和应用sts.txt:构建文件,用java面试题于生linux成makefile;
 prj.conf:配置文件 ;
 src/main.嵌入式系统开发c:主函数文件。

通过 CMake 生成 Makefile 文件时,需要通过 BOARD 参数指定目标平台,此java环境变量配置处指定为 qemu_x86 平台。

以 Zephyr 系统中 hello world 例程为例:

$cd ~/zephyrprojectubuntu20.04安装教程/zephyr/samples/hello_wo嵌入式系统的应用rjavascriptld

##新建一个 build 目录linux操作系统基础知识,用于存放临时目录

$mkdir -p build && cjava模拟器d build

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

$cmakeopenstack包含两个主要模块 -GNinja -DBOARD=qemu_x86 …


                                            《嵌入操作系统 - Zephyr开发笔记》 第2章 Zephyr 编译环境搭建(Linux)

##编译执行程序

$ninja


                                            《嵌入操作系统 - Zephyr开发笔记》 第2章 Zephyr 编译环境搭建(Linux)

$ninja run


                                            《嵌入操作系统 - Zephyr开发笔记》 第2章 Zephyr 编译环境搭建(Linux)

##可以看到界面打印 hello world 日志

##退出 qzephyr星际战甲emu 模拟器方式:ctrl-a,然后按 x


                                            《嵌入操作系统 - Zephyr开发笔记》 第2章 Zephyr 编译环境搭建(Linux)

或者直接ctrl-x,强制退出。

【注】如果没有Ninaja工具,先安装 Ninaja 工具

$git clone git:openstack与k8s区别//github.com/ninja-build/ninja.git && cd ninja

##生成可执行文件

$./configure.py -ubuntu系统-bootstrap

##将生成的可执行文件 ninja 拷贝到系统目录(/user/bin)下

$sudo cp ninlinuxja /user/bin/

安装完成 Ninaja 工linux系统安装具之后可以直接使用 Ninaja 工具生成工程了。

2.5在云计算的特点nuclejava培训o上运行示例程序

在QEMU中运行只是测试环境配置是否正常,我们最终都要在板子上运行,接下来笔者将带领大ubuntu安装教程家在nucleo板子上运行例程。

2.5.1 Cmake编译程序

我们还是进入工程文件。还是以 Z云计算技术与应用ephyr 系统中 hello world 例程为例:

$cd ~/zephyrproject/zephyr/samples/hello_world

##新建一个 build 目录,用于存放临时目录

$mkdir -p build && cd build

##通过 cmake 指令生java编译器成 nucleo_f746zg平台 make嵌入式系统是什么file 文件

$czephyr星际战甲make -DBOARD=nucleo_f746zg …嵌入式系统开发


                                            《嵌入操作系统 - Zephyr开发笔记》 第2章 Zephyr 编译环境搭建(Linux)

zephyjava编译器r也支持menuconfig配置,只要执行 make BOARD=nucleo_f746zzephyr当英文名的寓意g menuconfig 命令, 就会出现类似的配置界:


                                            《嵌入操作系统 - Zephyr开发笔记》 第2章 Zephyr 编译环境搭建(Linux)

$make BOARD=nucleo_f746zg menuconfig

##编译执行程序zephyrus

$make


                                            《嵌入操作系统 - Zephyr开发笔记》 第2章 Zephyr 编译环境搭建(Linux)

以下表示编译成功:


                                            《嵌入操作系统 - Zephyr开发笔记》 第2章 Zephyr 编译环境搭建(Linux)

在build/云计算是什么zephyr/ 目录下就会生成可执行文件:


                                            《嵌入操作系统 - Zephyr开发笔记》 第2章 Zephyr 编译环境搭建(Linux)

可以将zephyr.zephyrushex拷贝到windows下,通过STM32 ST-LINK Utility软件烧写。如何在Ubuntu中烧写,后文会有介绍。烧写到板子后连接串口,可以看到以下信息:openstack是一个开源的


                                            《嵌入操作系统 - Zephyr开发笔记》 第2章 Zephyr 编译环境搭建(Linux)

2.5.2 west编ubuntu译程序

1云计算技术与应用.编译源码

注意:命令执行需要在 zephyrproject/zephyr/ 目录下,ubuntu安装教程而不是zephyrproject或其他*

$cd ~/zephyrproject嵌入式系统原理与应用课后答案/zephyr

$west build -p auto -b nucleo_f746zg samples/basic/blinky


                                            《嵌入操作系统 - Zephyr开发笔记》 第2章 Zephyr 编译环境搭建(Linux)

2.编译完成功,显示如下内容

-- west build: building application
[1/130] Preparing syscall dependency handling
[125/130] Linking C executable zephyr/zephyr_prebuilt.elf
Memory region Used Size Region Size %age Used
FLASH: 13776 B 1 MB 1.31%
DTCM: 0 GB 64 KB 0.00%
SRAM: 4400 B 256 KB 1.68%
IDT_LIST: 200 B 2 KB 9.77%
[130/130] Linking C executable zephyr/zephyr.elf


                                            《嵌入操作系统 - Zephyr开发笔记》 第2章 Zephyr 编译环境搭建(Linux)

3.编译后生成的文件包含在 ~/zephyrproject/zephyr/linux常用命令build/zephyr/ 目录下:


                                            《嵌入操作系统 - Zephyr开发笔记》 第2章 Zephyr 编译环境搭建(Linux)

4.烧写程序到开发板

方式一openstack包含两个主要模块

可以将zephyr.hex拷贝到windows下,通过STM32 ST-LINK Utility软件烧写。

方式二:

通过uzephyrbuntu下的wset工具命令烧写

$west flash

注意:使用这个命令需要在ubuntu下安装STM32Czephyr怎么读ubeProgrammer和st-link驱动,否则报错。可在插入ST-LINK后查看设备其是否加zephyr载在Ubuntu中。


                                            《嵌入操作系统 - Zephyr开发笔记》 第2章 Zephyr 编译环境搭建(Linux)

关于west如何使用menuconfig将在下一篇文章详细介绍。

2.6 STM32CubeProgrammer烧写工具安装

STM32CubeProgrammer 简称 STMjava怎么读32Culinux是什么操作系统be嵌入式系统Prog,是一个适用于 STM32 系列产linux系统品的跨平台linux创建文件、多合一的程序烧写工具。

 “跨平台ubuntu怎么读” 体现在支持 Windows、macOS 和 Linux 操作系统,因此软件运行时需要 Java 环境。
 “多合一” 体现在支持通过 USB、ST-LINK、UART、OTA 多种方式来烧写固件。

                                            《嵌入操作系统 - Zephyr开发笔记》 第2章 Zephyr 编译环境搭建(Linux)

1.Ubuntu 18.04安装 Oracle Java 8云计算是什么

方法一、自动安装

$sudo add-apt-repository ppa:webupd8team/java

$sudo apt update

$sudo aptubuntu怎么设置中文 install orubuntu安装vsftpdacle-java8-installer

设置为默认openstack核心组件 JDK

sudo upd嵌入式系统原理与应用ateopenstack包含两个主要模块-java-alternatives -s java-8-oracle

方法二云计算、手动安装

oracle Java官网下载地址:http://www.oracle.com/technetwork/java/javase/downloads/index.html

(以jdk-8u2OpenStack61-linux-x64.tar.gz为例)

a.创建目录:

$sudo mkdir /usr/lib/jvm

b.解压缩到该目录:

$sudo tar -zxvfjava模拟器 jdk-8u261-linux-x64.tar.gz -C /usr/lib/jvm

c.修改环境变量:  

sudo vi ~/.bashrc

在文件末尾追加下面内容:

#set oracle jdk environment
export JAVA_HOME=/usr/lib/jvm/jdk1.8.0_261 ## 这里要注意目录要换成自己解压的jdk 目录
export JRE_HOME=${JAVA_HOME}/jre
export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib
export PATH=${JAVA_HOME}/bin:$PATH

使环境变量马上生效:

$source ~/.bashrc

d.将此 JDK 注册到系统中

$sudo update-alter云计算的关键技术natives --install /usr/bin/java java /u嵌入式系统原理与应用sr/lib/jvm/jdklinux创建文件1.8.0_261/bin/java 300


                                            《嵌入操作系统 - Zephyr开发笔记》 第2章 Zephyr 编译环境搭建(Linux)

e嵌入式系统的特点.查看java版本,看看是否安装成功:

$java -vlinuxersion


                                            《嵌入操作系统 - Zephyr开发笔记》 第2章 Zephyr 编译环境搭建(Linux)

如果你安装了多个OpenStack版本的jdk,你可以通过以下命令在这些版本之间切换:

$sud嵌入式系统是什么o update-alternatives --config java


                                            《嵌入操作系统 - Zephyr开发笔记》 第2章 Zephyr 编译环境搭建(Linux)

2. STM32CubePjava面试题rogrammer安装

下载 en.stm32cubeprog.zip 并解压缩,里面有三个安装文件,分别对应ubuntu怎么读三个操作系统平台。

├── SetupS云计算技术与应用TM32CubeProgrammer-2.5.0.app # MacOS 安装

├── Setuopenstack密钥对的作用pSTM32CubeProgrammer-openstack是什么2.5.0.exelinux操作系统基础知识 # Windows 安装

└── SetupSTM32CubeProgrammer-2.5.0.linux # Linux 安装

在 Ubuntu 中,执行如下命令即可安装

$嵌入式系统开发工程师suubuntu20.04安装教程do ./Setupjava模拟器STM32CubeProgrammer-zephyr2.5.0.linux


                                            《嵌入操作系统 - Zephyr开发笔记》 第2章 Zephyr 编译环境搭建(Linux)


                                            《嵌入操作系统 - Zephyr开发笔记》 第2章 Zephyr 编译环境搭建(Linux)


                                            《嵌入操作系统 - Zephyr开发笔记》 第2章 Zephyr 编译环境搭建(Linux)

【注1】安装时需要将所有文件en.stm3linux必学的60个命令2cubeprog_v2-5-0.zip压缩的所有文件放在同一目录。

【注2】安装完成后运行不起来,出现 “错误:找不到或无法加云计算是什么载主类 com.st.app.Main” 的错误提示。原因是 ST 的 工具是使用 Oraclezephyr什么意思 的 JDK 进行开发的,而不是 Ubuntu 默认安装的 Open-JDK。

安装后默认在/usr/local/STMicroelinux是什么操作系统lectronics/STM32Cube/STM32CubeProgrammer/bin目录下,javascript运行STM32CubeProgrammer即可:

$ ./STM32CubeProgrammer

创建快捷方式:

$sudo cp /usr/local/STMicroelectronics/STM32Cube/STM32CubeProgrammer.desktop /usr/share/applicati云计算的关键技术ons

接下来,再浏览文件夹/usr/share/applications,有STM32Cubjavascript百炼成仙eProgrammer.desktop文件,现在可以在快捷方式中打开软件。


                                            《嵌入操作系统 - Zephyr开发笔记》 第2章 Zephyr 编译环境搭建(Linux)

3linux操作系统基础知识.连接st-link到ubuntu

1.虚拟机->可移动设备-&云计算技术与应用gt;STMicroelectronics STM32 STLink ->连接

2.执行lsusb命令如果出现STMicroelubuntu安装教程ectronics STM32 STLink字样设备,代表sj-link已经连接到ubuntu。


                                            《嵌入操作系统 - Zephyr开发笔记》 第2章 Zephyr 编译环境搭建(Linux)