【OpenHarmony】openharmony移植到RK3568------获取源码编译OpenHarmony源码

一、源码获取

源码获取有好几种方式,在这里直接在镜像网站下载源码,点击下面连接下载全量版本的OpenHarmony4.1

https://repo.huaweicloud.com/openharmony/os/4.1-Release/code-v4.1-Release.tar.gz

将源码放到自己建立的目录下解压,我放入的是这个目录

/home/wzz/work/0H4.1

二、搭建编译环境

1. 安装工具和库

输入下面命令安装依赖库

sudo apt-get install binutils binutils-dev git git-lfs gnupg flex bison gperf build-essential zip curl zlib1g-dev 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 genext2fs device-tree-compiler make libffi-dev e2fsprogs pkg-config perl openssl libssl-dev libelf-dev libdwarf-dev u-boot-tools mtd-utils cpio doxygen liblz4-tool openjdk-8-jre gcc g++ texinfo dosfstools mtools default-jre default-jdk libncurses5 apt-utils wget scons python3.8-distutils tar rsync git-core libxml2-dev lib32z-dev grsync xxd libglib2.0-dev libpixman-1-dev kmod jfsutils reiserfsprogs xfsprogs squashfs-tools pcmciautils quota ppp libtinfo-dev libtinfo5 libncurses5-dev libncursesw5 libstdc++6 gcc-arm-none-eabi vim ssh locales libxinerama-dev libxcursor-dev libxrandr-dev libxi-dev

如果出现错误,根据错误安装依赖库就行

2. 选择python版本

Ubuntu中默认的python版本是python2,编译OpenHarmony源码需要python3,输入下面命令切换到python3

which python3.8
sudo update-alternatives --install /usr/bin/python python {Python 3.8 路径} 1 #{Python 3.8 路径}为上一步查看的Python 3.8的位置

sudo update-alternatives --install /usr/bin/python3 python3 {Python 3.8 路径} 1 #{Python 3.8 路径}为上一步查看的Python 3.8的位置

3. 修改shell

ubuntu20.04默认是dash,查看

bash 复制代码
ls -l /bin/sh

但是编译Openharmony源码环境需要bash,输入下面命令改为bash

bash 复制代码
sudo dpkg-reconfigure dash

在弹出的界面选择NO

4. 首次编译OpenHarmony源码

首次编译OpenHarmony源码需要执行下面的命令,首先先进入OpenHarmony目录,输入:

bash build/prebuilts_download.sh

安装过程中会提示如下所示问题:

WARNING: You are using pip version 21.2.4; however, version 23.0.1 is available You should consider upgrading via the '/home/wzz/0H4.1/0penHarmony-v4.1-Relese/0penHarmony/prebuilts/python/linux-x86/3,10.2/bin/python3.10 -m pip install-upgrade pip' command

根据警告执行下面命令就好

/home/wzz/0H4.1/0penHarmony-v4.1-Relese/0penHarmony/prebuilts/python/linux-x86/3,10.2/bin/python3.10 -m pip install-upgrade pi

再使用bash build/prebuilts_download.sh命令即可

编译OpenHarmony源码可以使用hb命令,或者build.sh

使用build.sh

输入下面命令:

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

等待编译完成,编译成功OpenHarmony源码成功在out/rk3568/packages/phone/images生成如下镜像

boot_linux.img MinitoaderAll.bin ramdisk.img sys_prod.img userdata.img config.cfg uboot.img chip_prod.img vendor.img eng_system.img parameter.txt resource.img system.img updater.img

或者使用hb命令

先安装hb工具

python3 -m pip install --user build/hb

设置环境变量。

vim ~/.bashrc

将以下命令拷贝到.bashrc文件的最后一行,保存并退出。

export PATH=~/.local/bin:$PATH

执行如下命令更新环境变量。

source ~/.bashrc

使用hb命令前需要先设置编译目标,输入下面命令

hb set

选择stander,在选择rk3568,输入下面命令编译OpenHarmony

hb build -f

相关推荐
ShiMetaPi2 小时前
操作【GM3568JHF】FPGA+ARM异构开发板 使用指南:蓝牙
arm开发·嵌入式硬件·fpga开发·rk3568
fakerth3 天前
【OpenHarmony文件管理子系统】文件访问接口解析
操作系统·openharmony
特立独行的猫a3 天前
开源OpenHarmony润开鸿HH-SCDAYU800A开发板开箱体验
开源·harmonyos·openharmony·hh-scdayu800a
叶玳言5 天前
【LVGL】从HTML到LVGL:嵌入式UI的设计迁移与落地实践
前端·ui·html·移植
fakerth5 天前
【OpenHarmony文件管理子系统】文件访问接口mod_fileio解析
操作系统·openharmony
fakerth5 天前
【OpenHarmony文件管理子系统】文件访问接口mod_file解析
操作系统·openharmony
ShiMetaPi8 天前
【GM3568JHF】FPGA+ARM异构开发板 使用指南:显示与触摸
arm开发·嵌入式硬件·fpga开发·rk3568
ShiMetaPi9 天前
【ShiMetaPi M4-R1】上手:RK3568B2 |开源鸿蒙(OpenHarmony) 开发板上手指南
驱动开发·开源·鸿蒙系统·openharmony·南向开发
Monkey-旭12 天前
鸿蒙 5.1 深度解析:ArkUI 4.1 升级与分布式开发新范式
分布式·wpf·harmonyos·arkts·openharmony·arkui
林政硕(Cohen0415)24 天前
RK3568 NPU RKNN(二):RKNN-ToolKit2环境搭建
rknn·rk3568·rknpu·rknn-toolkit2