首页 > 编程语言 >【OpenHarmony】openharmony移植到RK3568------获取源码编译OpenHarmony源码

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

时间:2024-08-23 17:58:02浏览次数:11  
标签:bin OpenHarmony img openharmony dev 编译 源码

一、源码获取

源码获取有好几种方式,在这里直接在镜像网站下载源码,点击下面连接下载全量版本的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,查看

ls -l /bin/sh

但是编译Openharmony源码环境需要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

 

标签:bin,OpenHarmony,img,openharmony,dev,编译,源码
From: https://blog.csdn.net/weixin_62370184/article/details/141471180

相关文章

  • 基于springboot的免费体育馆场地预约系统(源码+文档+调试+讲解)
    收藏关注不迷路!!......
  • Android车载蓝牙音乐实例(附Demo源码):实现手机播放音乐后车机应用显示音乐名称,歌手,专辑
    一、功能需求功能需求是在Android10以上设备上实现蓝牙音乐功能,细分为两个功能点:1、手机和车载设备实现蓝牙连接(本Demo文只做监听蓝牙连接状态,需手动到设置中连接蓝牙)2、连接蓝牙成功后手机播放音乐时车载设备也能播放音乐,并且在车机应用上显示音乐名称,歌手,专辑名。可在车......
  • 帝国cms源码怎么查看
    如何查看帝国CMS源码帝国CMS是一个开源的网站管理系统,你可以通过以下步骤查看其源码:步骤1:连接到FTP服务器使用FTP客户端(例如FileZilla)连接到你的网站托管服务器。输入你的FTP凭据(用户名、密码和服务器地址)。步骤2:导航到帝国CMS目录通常,帝国CMS文件存储在/w......
  • 海外商城海跨境电商APP定制开发多国语音定制app源码搭建
    海外商城App的开发是一个复杂而系统的工程,‌涉及多个阶段和注意事项。‌以下是一个详细的海外商城App开发流程和注意事项:‌开发流程1.‌需求确定‌:‌明确应用程序的目标,‌确定App要解决的具体问题,‌以及面向的用户群体。‌与客户进行深入的洽谈沟通,‌了解App的开发内容......
  • Go 互斥锁 Mutex 源码分析 (一)
    原创文章,欢迎转载,转载请注明出处,谢谢。0.前言锁作为并发编程中的关键一环,是应该要深入掌握的。1.锁1.1示例实现锁很简单,示例如下:varglobalintfuncmain(){ varmusync.Mutex varwgsync.WaitGroup fori:=0;i<2;i++{ wg.Add(1) gofunc(iint){......
  • 智能电子名片小程序源码系统 人人可创建属于自己的电子名片 带完整的搭建教程
    系统概述在当今数字化时代,名片已经不再局限于传统的纸质形式。智能电子名片小程序源码系统的出现,为人们提供了一种更加便捷、高效、个性化的名片管理方式。本文将深入介绍该源码系统的系统概述和特色功能,帮助读者更好地了解这一创新工具。代码示例系统特色功能一览名片设......
  • 本地生活同城便民信息小程序源码系统 带完整的安装代码包以及搭建部署教程
    系统概述本地生活同城便民信息小程序源码系统是一款专为本地生活服务打造的综合性平台。它通过整合各类本地商家和服务资源,为用户提供便捷、高效的生活服务信息查询和交易渠道。该系统采用先进的技术架构,具备高度的稳定性和扩展性,能够适应不断变化的市场需求。同时,它还注重用......
  • [每周一更]-(第111期):从零开始:如何在 CentOS 上源码编译安装 PHP 7.4
    文章目录系统信息:0、安装版本:1、下载/解压2、安装依赖3、配置autoconf4、配置参数5、编译和安装6、验证安装的插件6.1、配置php.ini6.2、配置opcache7、错误7.1Failedtoconnectto2a03:2880:f10e:83:face:b00c:0:25de:Networkisunreachable7.1.1禁用yum使用I......
  • 基于Java+Vue的采购管理系统:提高决策效率(项目源码)
       前言:采购管理系统是一个综合性的管理平台,旨在提高采购过程的效率、透明度,并优化供应商管理。以下是对各个模块的详细解释:一、供应商准入供应商注册:供应商通过在线平台进行注册,填写基本信息和资质文件。资质审核:系统对供应商提交的资质文件进行自动或人工审核,确保供......
  • JSP基于SSM框架的高校网络教学平台0qyf5(程序+源码+数据库+调试部署+开发环境)
    本系统(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面。系统程序文件列表系统功能:教师,学生,课程资料,资料分类,作业信息,作业提交,作业批改,课程信息,选课信息,课程签到技术要求:开发语言:JSP前端使用:HTML5,CSS,JSP动态网页技术后端......