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/ 目录下。

相关推荐
坚果派·白晓明1 天前
三方库ada
harmonyos·鸿蒙·openharmony
云和数据.ChenGuang1 天前
鸿蒙餐饮系统:全场景智慧餐饮新范式
人工智能·机器学习·华为·数据挖掘·harmonyos·鸿蒙·鸿蒙系统
云和数据.ChenGuang2 天前
鸿蒙智联,极智共生:HarmonyOS与MiniMax智能体的融合新纪元
华为·harmonyos·鸿蒙
UnicornDev2 天前
【HarmonyOS 6】今日统计卡片实战:运动记录数据概览
华为·harmonyos·arkts·鸿蒙·鸿蒙系统
ShuiShenHuoLe2 天前
组件的状态ComponentV2
harmonyos·鸿蒙
云栖梦泽3 天前
鸿蒙应用开发:网络通信与数据同步优化(上)——网络通信基础
鸿蒙系统
仓颉编程语言3 天前
CangjieSkills 正式开源:为仓颉 AI 编程打造的“技能增强“方案,实测降低 60% 费用
华为·ai编程·鸿蒙·仓颉编程语言
左手厨刀右手茼蒿4 天前
Flutter 三方库 all_lint_rules_community 的鸿蒙化适配指南 - 在鸿蒙系统上构建极致、严谨、基于全量社区 Lint 规则的工业级静态代码质量与安全审计引擎
flutter·harmonyos·鸿蒙·openharmony·all_lint_rules_community
雷帝木木4 天前
Flutter for OpenHarmony:Flutter 三方库 cbor 构建 IoT 设备的极致压缩防窃协议(基于标准二进制 JSON 表达格式)
网络·物联网·flutter·http·json·harmonyos·鸿蒙
王码码20354 天前
Flutter 三方库 servicestack 的鸿蒙化适配指南 - 实现企业级 Message-based 架构集成、支持强类型 JSON 序列化与跨端服务调用同步
flutter·harmonyos·鸿蒙·openharmony·message-based