0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

OHOS3.1版本的简明编译流程

鸿蒙系统学习笔记 来源:鸿蒙系统学习笔记 作者:鸿蒙系统学习笔记 2022-04-27 10:34 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

OHOS的开发环境搭建和编译系统的混杂,一直以来都是开发者吐槽最多的地方。


2021年我搭建了一个可用的开发环境,放在了百度云盘:
链接为:https://pan.baidu.com/s/1KvSGFBf6pdyqdJTTq_1O6A 提取码:ohos
这里提供了一个配置好的Linux虚拟机开发环境、以及相关的配套工具和驱动软件。
有需要的小伙伴可去这里下载来使用,根据 README 文档来使用即可。
OHOS3.1版本会有一些新依赖的工具,请开发者自行安装或更新即可。如:

执行“sudo apt install -y libncurses5” 安装 “NCURSES_TINFO_5.0.19991023”
执行“sudo apt install ruby-full gcc-arm-linux-gnueabi” 安装新需要的编译工具等等。


OHOS3.1版本,明显可以看出标准系统的编译流程相比LTS3.0版本,精简了非常多,标准系统的build.sh和小型系统的hb build实际进行了合并统一,我对相关的编译流程做了一下整理,如下图所示。

pYYBAGJoq1WAAojeAAQce-pyBkA385.png

实测通过build.sh编译的log如下:

++++++++++++++++++++++++++++++++++++++++
--product-name rk3568 --ccache
[1]//build/build_cripts/build.sh: Begin:
[2]//build/scripts/entry.py: Begin to do_build:
[3]//build/lite/build.py: Begin to build: { rk3568 }
[4]//build/lite/hb/__main__.py: Begin:
[5]//build/lite/hb_internal/build/build.py: create a 'Build build' and collect cmd+args
[5]//build/lite/hb_internal/build/build.py: build.build( ['rk3568'] )
--------------------------------------------------------------------------
[6]//build/lite/hb_internal/build/build_process.py: build ccache

[OHOS INFO] Set cache size limit to 50.0 GB
--------------------------------------------------------------------------
[6.gn]//build/lite/hb_internal/build/build_process.py: gn_build run gn_gen

[OHOS INFO] [.gn] run .gn -> //build/core/gn/dotfile.gn ==>> root -->>
[OHOS INFO] =======================================================
[OHOS INFO] [gn] -->>root : //build/core/gn/BUILD.gn: Begin
[OHOS INFO] root_out_dir = //out/rk3568
[OHOS INFO] root_build_dir = //out/rk3568
[OHOS INFO] root_gen_dir = //out/rk3568/gen
[OHOS INFO] current_toolchain = //build/toolchain/ohos:ohos_clang_arm
[OHOS INFO] host_toolchain = //build/toolchain/linux:clang_x64
[OHOS INFO] enable_ramdisk = true
[OHOS INFO] [gn] collect args for 'load.py'
[OHOS INFO] [gn] _platforms_config_file: //out/preloader/rk3568/platforms.build
[OHOS INFO] [gn] _subsystem_config_file: //out/preloader/rk3568/subsystem_config.json
[OHOS INFO] [gn] exec_script: //build/loader/load.py
...........
[OHOS INFO] [gn] -->>root: //build/core/gn/BUILD.gn: Begin
[OHOS INFO] =======================================================
...........
[OHOS INFO] Done. Made 15929 targets from 2670 files in 71720ms
-------------------------------------------------------------------------------
[6.ninja]//build/lite/hb_internal/build/build_process.py: ninja_build run ninja

[OHOS INFO] [1/1] Regenerating ninja files
[OHOS INFO] [1/728] CC clang_x64/obj/third_party/pcre2/pcre2/src/libpcre2/pcre2_config.o
...........
[OHOS INFO] [639/640] STAMP obj/build/ohos/images/make_images.stamp
[OHOS INFO] [640/640] STAMP obj/build/core/gn/images.stamp

--------------------------------------------------
[6.PostBuild] build_process.py: PostBuild.clean
[7]//build/lite/hb_internal/common/misc.py: PostBuild.clean()
[OHOS INFO] //build/scripts/summary_ccache_hitrate.py: main()
[OHOS INFO] -------------------------------------------------
[OHOS INFO] ccache summary:
...........
[OHOS INFO] rk3568 build success
[OHOS INFO] cost time: 0:03:05
[6]//build/lite/hb_internal/build/build_process.py: build success
[4]//build/lite/hb/__main__.py: End. status[ 0 ]
[1]//build/build_cripts/build.sh: End.
=====build successful=====
++++++++++++++++++++++++++++++++++++++++


通过hb build来编译,直接就是从[4]开始,到[4]结束。
中间的过程请小伙伴们自行深入去理解了。

审核编辑:汤梓红

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 开发环境
    +关注

    关注

    1

    文章

    252

    浏览量

    17532
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    怎样将buildroot移植到ohos里呢?有哪些步骤

    :buildroot-2021.02.82.openharmony版本:openharmony3.1 Beta3.L2级别二、移植文件下载文件下载链接三、移植步骤(1)在gitee把文件mkimages.py、dac.txt下载下来,替换
    发表于 03-17 10:40

    使用DevEco Studio3.0编译OHOS应用的过程

    ;compileSdkVersion": 8,//指定OpenHarmony应用/服务编译时的SDK版本 "compatibleSdkVersion": 8,//指定
    发表于 04-11 11:20

    OHOS3.1 cannot stat 'packages/phone/../../../../ramdisk.img异常分析和处理

    1 问题描述在OHOS 3.1 Release或Master分支上编译HI3516DV300或RK3568标准系统时,有可能会出现以下异常:一开始我也是尝试找人、找解决方案,但看到Gitee上
    发表于 04-14 14:59

    HUAWEI DevEco Studio 3.1版本发布,配套ArkTS声明式开发全面升级

    今年开发者大会发布了HarmonyOS应用开发套件DevEco Studio 3.1版本,展示了DevEco Studio 3.1版本的关键特性。 HUAWEI DevEco Stud
    发表于 11-17 11:52

    RK3568 OH3.1 桌面实现旋转

    \'SetOrientation\' in \'OHOS::Rosen::ScreenManager\'; ======================================= OH 3.1 Release
    发表于 06-09 09:28

    ARM优化CC++编译v5.1版本的详细概述

    本文的主要内容是介绍了TI ARM优化CC++编译v5.1版本的详细概述
    发表于 04-18 09:11 0次下载
    ARM优化CC++<b class='flag-5'>编译</b>v5.1<b class='flag-5'>版本</b>的详细概述

    OpenCV3.1教程之编译的详细资料说明

    本文档的主要内容详细介绍的是OpenCV3.1教程之编译的详细资料说明包括了:OpenCV3.1.0编译,扩展模块添加与编译
    发表于 01-06 08:00 1次下载

    深度解析鸿蒙系统的编译流程

    1.准备工作 我的本地代码是基于最新发布的OpenHarmony 1.1.0 LTS(2021-04-01)版本抓取的,代码根目录OHOS1_1_0LTS: $repo init -u https
    的头像 发表于 04-23 17:04 1.2w次阅读
    深度解析鸿蒙系统的<b class='flag-5'>编译</b><b class='flag-5'>流程</b>

    详解OpenHarmony 3.1版本新特性

    千呼万唤始出来,在OpenHarmony最新发布的3.1版本中终于支持了suRFace+videoplayer实现视频播放的功能。
    的头像 发表于 04-28 09:04 2651次阅读

    HUAWEI DevEco Studio 3.1版本发布,配套ArkTS声明式开发全面升级

    今年开发者大会发布了HarmonyOS应用开发套件DevEco Studio 3.1版本,展示了DevEco Studio 3.1版本的关键特性。 HUAWEI DevEco Stud
    的头像 发表于 11-16 19:20 2048次阅读

    使用ARMClang V6版本编译器出现错误的解决方法

    很多STM32开发者使用ARM mdk IDE进行开发,我们知道ARM MDK IDE早已推出ARMClang V6版本编译器了。不过,当我们把在V5版本经ARMCC编译通过的工程文
    的头像 发表于 06-07 12:32 1.4w次阅读
    使用ARMClang V6<b class='flag-5'>版本</b><b class='flag-5'>编译</b>器出现错误的解决方法

    使用V5版本经ARMCC编译放到V6时的一些错误

    很多STM32开发者使用ARM mdk IDE进行开发,我们知道ARM MDK IDE早已推出ARMClang V6版本编译器了。不过,当我们把在V5版本经ARMCC编译通过的工程文
    的头像 发表于 06-21 16:33 3426次阅读
    使用V5<b class='flag-5'>版本</b>经ARMCC<b class='flag-5'>编译</b>放到V6时的一些错误

    RealView编译工具3.1

    电子发烧友网站提供《RealView编译工具3.1版.pdf》资料免费下载
    发表于 11-03 11:08 0次下载
    RealView<b class='flag-5'>编译</b>工具<b class='flag-5'>3.1</b>版

    Moku 3.1版本升级!Moku:Lab、Moku:Pro新增支持逻辑分析仪

    Moku:Lab、Moku:Pro新增支持逻辑分析仪多仪器并行模式支持同时多窗口界面交互!LiquidInstruments宣布发布Moku3.1版本重要升级。此次更新对Moku:Pro、Moku
    的头像 发表于 11-03 08:16 939次阅读
    Moku <b class='flag-5'>3.1</b><b class='flag-5'>版本</b>升级!Moku:Lab、Moku:Pro新增支持逻辑分析仪

    解决BS25 1.0.T20.12版本开发工具默认SDK无法编译的问题

    本文介绍在BS25 1.0.T20.12版本开发工具下,默认的SDK无法编译的问题。
    的头像 发表于 11-08 09:40 1642次阅读
    解决BS25 1.0.T20.12<b class='flag-5'>版本</b>开发工具默认SDK无法<b class='flag-5'>编译</b>的问题