STM32F407移植OpenHarmony笔记1

参考文档:

OpenAtom OpenHarmonywidth=device-width,initial-scale=1.0https://docs.openharmony.cn/pages/v3.2/zh-cn/device-dev/get-code/gettools-acquire.md/

搭建环境

安装linux系统:

Ubuntu 22.04.2 LTS (GNU/Linux 5.15.0-91-generic x86_64)

下载源代码:我选择的是V3.2.4版本

https://repo.huaweicloud.com/openharmony/os/3.2.4/code-v3.2.4-Release_20231113.tar.gz

安装docker:

复制代码
sudo apt install docker.io

下载docker镜像: 单片机用的是轻量系统,因此选择对应的mini镜像

复制代码
sudo docker pull swr.cn-south-1.myhuaweicloud.com/openharmony-docker/docker_oh_mini:3.2

创建docker容器:给它取个别名叫ohos3,以后记得都用它,避免每次都重新创建新容器。

-v $(pwd):/home/openharmony参数是把当前目录映射到容器内的/home/openharmony。

复制代码
#创建并运行docker
sudo docker run --name ohos3 -it -v $(pwd):/home/openharmony swr.cn-south-1.myhuaweicloud.com/openharmony-docker/docker_oh_mini:3.2
#当需要重新进入docker的时候用:
sudo docker start -ai ohos3

后续代码编译都是在docker内进行。

验证环境:

解压源码:

复制代码
tar -xvf ./code-v3.2.4-Release_20231113.tar.gz

进入源码根目录:

复制代码
OpenHarmony-v3.2.4-Release/OpenHarmony

安装hb工具:

默认情况下,用官方文档的方法:python3 build.py -p {product_name}@{company}是编译不了的。

需要安装hb,后续也建议用hb命令来编译。

复制代码
pip install --user build/lite

安装成功后,输入hb,可以看到命令提示:

复制代码
root@46010c9c023d:/home/openharmony# hb
usage: -c [-h] [-v] {build,set,env,clean,tool} ...

OHOS Build System version 0.4.6

positional arguments:
  {build,set,env,clean,tool}
    build               Build source code
    set                 OHOS build settings
    env                 Show OHOS build env
    clean               Clean output
    tool                Call the gn command through the hb tool

optional arguments:
  -h, --help            show this help message and exit
  -v, --version         show program's version number and exit

编译测试:用hb set选择要编译的目标,然后执行build,我们先测试qemu_mini_system_demo

复制代码
hb set
hb build

跑完一堆[OHOS INFO]之后,会看到成功提示:

复制代码
[OHOS INFO] qemu_mini_system_demo build success
[OHOS INFO] cost time: 0:00:06

最终编译出来的文件在out目录,一个叫OHOS_Image的文件。

相关推荐
星星火柴9361 小时前
关于“双指针法“的总结
数据结构·c++·笔记·学习·算法
Cx330❀4 小时前
【数据结构初阶】--排序(五):计数排序,排序算法复杂度对比和稳定性分析
c语言·数据结构·经验分享·笔记·算法·排序算法
小幽余生不加糖4 小时前
电路方案分析(二十二)适用于音频应用的25-50W反激电源方案
人工智能·笔记·学习·音视频
..过云雨5 小时前
01.【数据结构-C语言】数据结构概念&算法效率(时间复杂度和空间复杂度)
c语言·数据结构·笔记·学习
岑梓铭6 小时前
考研408《计算机组成原理》复习笔记,第五章(3)——CPU的【数据通路】
笔记·考研·408·计算机组成原理·计组
Blossom.11812 小时前
把 AI 推理塞进「 8 位 MCU 」——0.5 KB RAM 跑通关键词唤醒的魔幻之旅
人工智能·笔记·单片机·嵌入式硬件·深度学习·机器学习·搜索引擎
草莓熊Lotso13 小时前
《吃透 C++ 类和对象(中):const 成员函数与取地址运算符重载解析》
c语言·开发语言·c++·笔记·其他
玖別ԅ(¯﹃¯ԅ)14 小时前
PID学习笔记6-倒立摆的实现
笔记·stm32·单片机
想学全栈的菜鸟阿董15 小时前
Django5个人笔记
笔记
ZZHow102420 小时前
JavaWeb开发_Day05
java·笔记·web