OpenHarmony(1)开发环境搭建

一:开源项目

OpenHarmony是由开放原子开源基金会(OpenAtom Foundation)孵化及运营的开源项目,目标是面向全场景、全连接、全智能时代,基于开源的方式,搭建一个智能终端设备操作系统的框架和平台,促进万物互联产业的繁荣发展。

官网:OpenAtom OpenHarmony

二:开发环境

复制代码
sudo apt-get update && sudo apt-get install binutils git git-lfs gnupg flex
bison gperf build-essential zip curl zlib1g-dev gcc-multilib g++-multilib
libc6-dev-i386 lib32ncurses5-dev x11proto-core-dev libx11-dev lib32z1-dev ccache
libgl1-mesa-dev libxml2-utils xsltproc unzip m4 bc gnutls-bin python3.8
python3-pip ruby

三:获取源码

(1)注册gitee,添加公钥

(2)配置git

复制代码
git config --global user.name "yourname"
git config --global user.email "your-email-address"
git config --global credential.helper store

(3)安装repo工具

复制代码
curl -s https://gitee.com/oschina/repo/raw/fork_flow/repo-py3 \> /usr/local/bin/repo \#如果没有权限,可下载至其他目录,并将其配置到环境变量中
chmod a+x /usr/local/bin/repo
pip3 install -i https://repo.huaweicloud.com/repository/pypi/simple requests

(4)获取源码

源码地址:zh-cn/release-notes/Readme.md · OpenHarmony/docs - Gitee.com

1) 通过repo + ssh 下载(需注册公钥,请参考码云帮助中心)。

复制代码
repo init -u git@gitee.com:openharmony/manifest.git -b master --no-repo-verify
repo sync -c
repo forall -c 'git lfs pull'

2) 通过repo + https 下载。

复制代码
repo init -u https://gitee.com/openharmony/manifest.git -b master --no-repo-verify
repo sync -c
repo forall -c 'git lfs pull'

四:安装编译器

(1)执行prebuilts

在源码根目录下执行脚本,安装编译器和二进制工具

下载的prebuilts二进制默认存放在与OpenHarmony同目录OpenHarmony_2.0_canary_prebuilts下

复制代码
bash build/prebuilts_download.sh

(2)安装nb

对于4.0 Beta1以上版本、master分支,在代码根目录下执行 pip install build/hb

低版本的,在代码根目录下执行 pip install build/lite

五:编译

1、hb方式

(1)设置系统类型和产品

输入 hb set 选择standard ,之后选择hihope 中的rk3568

(2)设置系统位数

默认情况下是32位系统,若不需要调整跳过此步骤即可。

如需编译为64位系统,请执行如下命令:

hb build --target-cpu arm64

(3)执行编译

  • 单独编译一个部件(例如hello),可使用"hb build -T 目标名称"进行编译。

  • 增量编译整个产品,可使用"hb build"进行编译。

  • 完整编译整个产品,可使用"hb build -f"进行编译。

此处以完整编译整个产品为例进行说明

hb build -f

编译结束后,出现"rk3568 build success"字样,则证明构建成功。

2、sh方式

./build.sh --product-name rk3568 --ccache

编译所生成的文件都归档在out/{device_name}/目录下,结果镜像输出在out/{device_name}/packages/phone/images/ 目录下。

相关推荐
程序员潘Sir2 小时前
鸿蒙应用开发从入门到实战(十七):ArkUI组件List&列表布局
harmonyos·鸿蒙
小白学鸿蒙2 天前
OpenHarmony(开源鸿蒙)小白入门教程
harmonyos·鸿蒙·鸿蒙系统
懒惰蜗牛5 天前
鸿蒙开发3--UI布局(玩转鸿蒙的Row、Column与Stack容器)
ui·华为·harmonyos·鸿蒙·鸿蒙系统
_waylau5 天前
如何将鸿蒙5应用升级到鸿蒙6
华为·harmonyos·鸿蒙·鸿蒙系统
ChinaDragonDreamer9 天前
HarmonyOS:固定样式弹出框
harmonyos·鸿蒙
搬砖的小码农_Sky10 天前
鸿蒙(HarmonyOS)应用开发技能栈
harmonyos·鸿蒙系统
鸿蒙小白龙11 天前
【OpenHarmony实战】系统参数SystemParameter完全指南:param get/set调试技巧与案例精解
harmonyos·鸿蒙·open harmony
鸿蒙小白龙11 天前
OpenHarmony中的系统服务管理配置讲解
harmonyos·鸿蒙·鸿蒙系统·open harmony
ai安歌11 天前
【走进鸿蒙002】文件操作案例:创建、写入和读取文件
鸿蒙
程序员潘Sir11 天前
鸿蒙应用开发从入门到实战(十六):线性布局案例
harmonyos·鸿蒙