0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內(nèi)不再提示

OHOS3.1版本的簡明編譯流程

鴻蒙系統(tǒng)學習筆記 ? 來源:鴻蒙系統(tǒng)學習筆記 ? 作者:鴻蒙系統(tǒng)學習筆記 ? 2022-04-27 10:34 ? 次閱讀

OHOS的開發(fā)環(huán)境搭建和編譯系統(tǒng)的混雜,一直以來都是開發(fā)者吐槽最多的地方。

?
2021年我搭建了一個可用的開發(fā)環(huán)境,放在了百度云盤:
鏈接為:https://pan.baidu.com/s/1KvSGFBf6pdyqdJTTq_1O6A 提取碼:ohos
這里提供了一個配置好的Linux虛擬機開發(fā)環(huán)境、以及相關的配套工具和驅動軟件。
有需要的小伙伴可去這里下載來使用,根據(jù) README 文檔來使用即可。
OHOS3.1版本會有一些新依賴的工具,請開發(fā)者自行安裝或更新即可。如:

執(zhí)行“sudo apt install -y libncurses5” 安裝 “NCURSES_TINFO_5.0.19991023”
執(zhí)行“sudo apt install ruby-full gcc-arm-linux-gnueabi” 安裝新需要的編譯工具等等。

?
OHOS3.1版本,明顯可以看出標準系統(tǒng)的編譯流程相比LTS3.0版本,精簡了非常多,標準系統(tǒng)的build.sh和小型系統(tǒng)的hb build實際進行了合并統(tǒng)一,我對相關的編譯流程做了一下整理,如下圖所示。

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]結束。
中間的過程請小伙伴們自行深入去理解了。

審核編輯:湯梓紅

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權轉載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學習之用,如有內(nèi)容侵權或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
收藏 人收藏

    評論

    相關推薦

    怎樣將buildroot移植到ohos里呢?有哪些步驟

    :buildroot-2021.02.82.openharmony版本:openharmony3.1 Beta3.L2級別二、移植文件下載文件下載鏈接三、移植步驟(1)在gitee把文件mkimages.py、dac.txt下載下來,替換
    發(fā)表于 03-17 10:40

    使用DevEco Studio3.0編譯OHOS應用的過程

    ;compileSdkVersion": 8,//指定OpenHarmony應用/服務編譯時的SDK版本 "compatibleSdkVersion": 8,//指定
    發(fā)表于 04-11 11:20

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

    1 問題描述在OHOS 3.1 Release或Master分支上編譯HI3516DV300或RK3568標準系統(tǒng)時,有可能會出現(xiàn)以下異常:一開始我也是嘗試找人、找解決方案,但看到Gitee上
    發(fā)表于 04-14 14:59

    HUAWEI DevEco Studio 3.1版本發(fā)布,配套ArkTS聲明式開發(fā)全面升級

    今年開發(fā)者大會發(fā)布了HarmonyOS應用開發(fā)套件DevEco Studio 3.1版本,展示了DevEco Studio 3.1版本的關鍵特性。 HUAWEI DevEco Stud
    發(fā)表于 11-17 11:52

    RK3568 OH3.1 桌面實現(xiàn)旋轉

    \'SetOrientation\' in \'OHOS::Rosen::ScreenManager\'; ======================================= OH 3.1 Release
    發(fā)表于 06-09 09:28

    ARM優(yōu)化CC++編譯v5.1版本的詳細概述

    本文的主要內(nèi)容是介紹了TI ARM優(yōu)化CC++編譯v5.1版本的詳細概述
    發(fā)表于 04-18 09:11 ?0次下載
    ARM優(yōu)化CC++<b class='flag-5'>編譯</b>v5.1<b class='flag-5'>版本</b>的詳細概述

    OpenCV3.1教程之編譯的詳細資料說明

    本文檔的主要內(nèi)容詳細介紹的是OpenCV3.1教程之編譯的詳細資料說明包括了:OpenCV3.1.0編譯,擴展模塊添加與編譯
    發(fā)表于 01-06 08:00 ?1次下載

    深度解析鴻蒙系統(tǒng)的編譯流程

    1.準備工作 我的本地代碼是基于最新發(fā)布的OpenHarmony 1.1.0 LTS(2021-04-01)版本抓取的,代碼根目錄OHOS1_1_0LTS: $repo init -u https
    的頭像 發(fā)表于 04-23 17:04 ?1.1w次閱讀
    深度解析鴻蒙系統(tǒng)的<b class='flag-5'>編譯</b><b class='flag-5'>流程</b>

    詳解OpenHarmony 3.1版本新特性

    千呼萬喚始出來,在OpenHarmony最新發(fā)布的3.1版本中終于支持了suRFace+videoplayer實現(xiàn)視頻播放的功能。
    的頭像 發(fā)表于 04-28 09:04 ?1932次閱讀

    HUAWEI DevEco Studio 3.1版本發(fā)布,配套ArkTS聲明式開發(fā)全面升級

    今年開發(fā)者大會發(fā)布了HarmonyOS應用開發(fā)套件DevEco Studio 3.1版本,展示了DevEco Studio 3.1版本的關鍵特性。 HUAWEI DevEco Stud
    的頭像 發(fā)表于 11-16 19:20 ?1214次閱讀

    使用ARMClang V6版本編譯器出現(xiàn)錯誤的解決方法

    很多STM32開發(fā)者使用ARM mdk IDE進行開發(fā),我們知道ARM MDK IDE早已推出ARMClang V6版本編譯器了。不過,當我們把在V5版本經(jīng)ARMCC編譯通過的工程文
    的頭像 發(fā)表于 06-07 12:32 ?7043次閱讀
    使用ARMClang V6<b class='flag-5'>版本</b><b class='flag-5'>編譯</b>器出現(xiàn)錯誤的解決方法

    使用V5版本經(jīng)ARMCC編譯放到V6時的一些錯誤

    很多STM32開發(fā)者使用ARM mdk IDE進行開發(fā),我們知道ARM MDK IDE早已推出ARMClang V6版本編譯器了。不過,當我們把在V5版本經(jīng)ARMCC編譯通過的工程文
    的頭像 發(fā)表于 06-21 16:33 ?2176次閱讀
    使用V5<b class='flag-5'>版本</b>經(jīng)ARMCC<b class='flag-5'>編譯</b>放到V6時的一些錯誤

    RealView編譯工具3.1

    電子發(fā)燒友網(wǎng)站提供《RealView編譯工具3.1版.pdf》資料免費下載
    發(fā)表于 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宣布發(fā)布Moku3.1版本重要升級。此次更新對Moku:Pro、Moku
    的頭像 發(fā)表于 11-03 08:16 ?463次閱讀
    Moku <b class='flag-5'>3.1</b><b class='flag-5'>版本</b>升級!Moku:Lab、Moku:Pro新增支持邏輯分析儀

    解決BS25 1.0.T20.12版本開發(fā)工具默認SDK無法編譯的問題

    本文介紹在BS25 1.0.T20.12版本開發(fā)工具下,默認的SDK無法編譯的問題。
    的頭像 發(fā)表于 11-08 09:40 ?1043次閱讀
    解決BS25 1.0.T20.12<b class='flag-5'>版本</b>開發(fā)工具默認SDK無法<b class='flag-5'>編譯</b>的問題