参考文档:
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的文件。