• Lv1
    粉丝0

积分3 / 贡献0

提问0答案被采纳0文章1

作者动态

    [经验分享] 玩转OpenHarmony开发之设备开发(1)开发环境搭建

    lzu-dslab 显示全部楼层 发表于 2024-6-27 10:49:56

    本文转载自实验室成员王天一同学的博客玩转OpenHarmony开发之设备开发(1)开发环境搭建-华为开发者论坛 | 华为开发者联盟 (huawei.com)

    前言

    最近在做OpenHarmony相关的设备开发,发现网络上大部分都是基于3.1的教程,针对4.04.1的文档反而没那么多,而4.04.1和3.1之间的编译又有一些差距,在踩了无数个坑之后,终于完成了4.04.1的编译,为了方便大家后续的开发,特意写一篇文章来介绍以贝启RK3568开发板为例的OpenHarmony设备开发的详细过程。

    基本环境

    操作系统: Ubuntu 22.04

    开发板:贝启RK3568

    OpenHarmony版本:OpenHarmony 4.0标签

    环境准备

    获取源码

    首先前往OpenHarmony官方的gitee仓库

    从版本分支获取源码。可获取该版本分支的最新源码,包括版本发布后在该分支的合入。这里我们选择 OpenHarmony-v4.0-Release的标签获取版本发布当时的源码。

    repo init -u https:gitee.comopenharmonymanifest -b refstagsOpenHarmony-v4.0-Release --no-repo-verify
    repo sync -c
    repo forall -c 'git lfs pull'

    注:官方的源码不一定适配所有开发板,对于某些开发板(比如本文使用的贝启RK3568),需要打上厂家提供的补丁才能正常使用,这部分内容本系列第二篇内容会讲到。

    配置开发环境

    为了在编译的时候不出现问题,本文采用docker镜像的方式创建开发环境(我们假设上一步已经将源码存在 $(pwd)docker_data$):

    sudo docker run -itd --name OH-compile -v $(pwd)docker_data:data ubuntu:bionic-20230530

    创建完成之后,进入容器的内部,安装基本的环境:

    apt-get update && 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

    然后安装源码自带的prebuilts脚本:

    bash buildprebuilts_download.sh

    到这里,不出意外的话就可以尝试我们的第一次编译了,在源码目录执行如下脚本命令:

    root@b08acd16337c:dataBQ3568# .build.sh --product-name rk3568 --target-cpu arm64 --ccache

    等待20分钟左右,可以看到编译完成:

    image-20240625221612752

    (未完待续)

    ©著作权归作者所有,转载或内容合作请联系作者

    您尚未登录,无法参与评论,登录后可以:
    参与开源共建问题交流
    认同或收藏高质量问答
    获取积分成为开源共建先驱

    Copyright   ©2025  OpenHarmony开发者论坛  京ICP备2020036654号-3 | 京公网安备11030102011662号 |技术支持 Discuz!

    返回顶部