色哟哟视频在线观看-色哟哟视频在线-色哟哟欧美15最新在线-色哟哟免费在线观看-国产l精品国产亚洲区在线观看-国产l精品国产亚洲区久久

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

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

3天內不再提示

初次體驗OpenHarmony2.0編譯 棒極了!

OpenHarmony技術社區(qū) ? 來源:鴻蒙技術社區(qū) ? 作者:即構李航 ? 2021-06-30 09:33 ? 次閱讀

2021 年 6 月 2 號,鴻蒙發(fā)布了 2.0 操作系統(tǒng),并且對外公開了 2.0 操作系統(tǒng)的源代碼。

看了介紹后發(fā)現(xiàn)鴻蒙的分布式能力非常強大,本來想拿多臺設備結合 “音視頻 SDK” 的功能開發(fā)多終端分布式的功能,比如 a 設備錄視頻,b 設備做采集推流,或者聲音在另一臺設備播放。

由于測試機還沒有到貨,先去編譯一個鴻蒙系統(tǒng)玩玩吧,開源的系統(tǒng)是完全脫離安卓的獨立鴻蒙系統(tǒng),另外因為也是剛接觸,還是會踩一些坑。

鴻蒙開源代碼結構介紹

鴻蒙開源了兩份源碼:

輕量級系統(tǒng),小型系統(tǒng)

標準系統(tǒng)源碼(2.0 Canary)

華為開發(fā)文檔并沒有對這兩個系統(tǒng)做介紹,“2.0 Canary” 也是最近開源的,我理解 2.0 可能是給更大性能與內存的設備使用的,例如手機,電視等。

小型系統(tǒng)應該給 IoT 一些物聯(lián)網設備使用,例如智能冰箱呀,智能電風扇等,好了廢話不多說,一起來構建鴻蒙標準系統(tǒng)源碼吧。

01

準備環(huán)境

設備要求:Ubuntu18

編譯工具:(如果使用 docker 可以無視)

https://repo.huaweicloud.com/harmonyos/os/2.0/tool_chain/

另外華為非常貼心,還提供了 docker 帶編譯環(huán)境的鏡像,由于我用的筆記本是 mac os 必須得用 docker 了,另外強烈推薦 docker,快好,省心省力,否則你還得安裝上面一堆工具。

docker 鏡像地址:

docker pull swr.cn-south-1.myhuaweicloud.com/openharmony-docker/openharmony-docker:0.0.4

執(zhí)行 “docker run -it xxx:tag /bin/bash” 運行并進入 docker。

02

下載源碼

repo 介紹:當初由于安卓源碼非常大,為了方便管理各個倉庫,用 xml 的方式記錄了整個系統(tǒng) git 庫的數(shù)量,名稱,路徑等,便于管理,鴻蒙也用的 repo 管理各個倉庫,還是挺香的,避免了各種子模塊雜亂臟的問題。

repo 初始化:

repo init -u https://gitee.com/openharmony/manifest.git -b master --no-repo-verify

# 使用此命令初始化時,可能會因為網絡慢的問題導致代碼更新失敗,可以嘗試以下命令來初始化:

repo init -u https://gitee.com/openharmony/manifest.git -b ssh/master --no-repo-verify

同步源碼:

// -c 獲取當前分支 -j 同步線程數(shù)默認為4

repo sync -c -j8

漫長的等待中… 以目前網速來看 需要一段時間。

更新二進制:

repo forall -c ‘git lfs pull’

居然失敗了,看了下錯誤信息,華為給的這個 docker 鏡像沒有安裝 lfs,接下來手動裝一下 git lfs 吧,執(zhí)行 “apt-get install git-lfs” 解決。

a2fddfbc-d91a-11eb-9e57-12bb97331649.jpg

執(zhí)行預處理腳本:

cd /

。。/scripts/prepare.sh

這個腳本是去下載構建工具建立構建環(huán)境的,比如 cmake gn 等一些構建工具,沒有跑這個腳本編譯會報各種錯。

03

開始構建

。/build.sh --product-name Hi3516DV300

目前開源的這份源碼里只有 Hi3516DV300,其他沒找到:

a2fddfbc-d91a-11eb-9e57-12bb97331649.jpg

編譯中…

a335037a-d91a-11eb-9e57-12bb97331649.png

編譯完成:

a34454ba-d91a-11eb-9e57-12bb97331649.png

04

最終產物

鏡像輸出在 out/ohos-arm-release/packages/phone/images/ 目錄下:

上圖可以看到各個分區(qū)鏡像已經編譯出來了,如果有開發(fā)板的話可以直接燒錄進去。有機會入個開發(fā)板玩玩,網上搜可以直接購買。

05

系統(tǒng)目錄結構分析

a36ed320-d91a-11eb-9e57-12bb97331649.png

從以上結構分析,跟 Linux 與安卓目錄結構大體類似,包括 vendor 分區(qū),但是目前沒有發(fā)現(xiàn)安卓相關的東西,也不能運行安卓 apk 只能運行華為自家的 hap。

可以看到系統(tǒng)自帶的桌面,狀態(tài)欄,設置等都是 hap。

繼續(xù)拆解 hap:

a4521ae0-d91a-11eb-9e57-12bb97331649.png

系統(tǒng)的 App 沒有了 Java 的身影,使用 JS 作為首選語言開發(fā),非常的輕量。

06

官網資料

官網源碼拉取文檔:

https://gitee.com/openharmony/docs/blob/master/zh-cn/device-dev/get-code/%E8%8E%B7%E5%8F%96%E5%B7%A5%E5%85%B7.md#section69141039143518

官網構建教程

https://gitee.com/openharmony/docs/blob/master/zh-cn/device-dev/get-code/%E6%BA%90%E7%A0%81%E8%8E%B7%E5%8F%96.md

07

關于個人暢想

鴻蒙不止是手機操作系統(tǒng),他是一整套解決方案,解決安卓與 iOS 不能解決的問題,大家一同期待。

下次測試機到貨后,我想結合多終端與音視頻來開發(fā)一些好玩創(chuàng)新的東西分享出來。

編輯:jq

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

    關注

    5

    文章

    2128

    瀏覽量

    57167
  • Docker
    +關注

    關注

    0

    文章

    457

    瀏覽量

    11852
  • 開源代碼
    +關注

    關注

    0

    文章

    36

    瀏覽量

    2942
  • 鴻蒙系統(tǒng)

    關注

    183

    文章

    2634

    瀏覽量

    66320
  • OpenHarmony
    +關注

    關注

    25

    文章

    3718

    瀏覽量

    16296

原文標題:OpenHarmony2.0編譯初體驗!

文章出處:【微信號:gh_834c4b3d87fe,微信公眾號:OpenHarmony技術社區(qū)】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦

    openharmony移植AT32F407編譯時錯誤

    openharmony上移植AT32F407,hb build后出現(xiàn)鏈接錯誤 [OHOS ERROR] /home/sven/openharmony/env_setup
    發(fā)表于 08-18 17:04

    鴻蒙OpenHarmony南向/北向快速開發(fā)教程-迅為RK3568開發(fā)板

    源碼 P3_初次編譯OpenHarmony源碼 P4_OpenHarmony鏡像簡介以及燒寫工具配置 P5_優(yōu)化開發(fā)流程-搭建windows開發(fā)環(huán)境 P6_優(yōu)化開發(fā)流程-搭建ubunt
    發(fā)表于 07-23 10:44

    鴻蒙OpenHarmony【輕量系統(tǒng) 編譯】 (基于Hi3861開發(fā)板)

    OpenHarmony支持hb和build.sh兩種編譯方式。此處介紹hb方式,build.sh腳本編譯方式請參考[使用build.sh腳本編譯源碼]。
    的頭像 發(fā)表于 05-14 17:53 ?1273次閱讀
    鴻蒙<b class='flag-5'>OpenHarmony</b>【輕量系統(tǒng) <b class='flag-5'>編譯</b>】 (基于Hi3861開發(fā)板)

    鴻蒙OpenHarmony開發(fā):【編譯構建指導】

    OpenHarmony編譯子系統(tǒng)是以GN和Ninja構建為基座,對構建和配置粒度進行部件化抽象、對內建模塊進行功能增強、對業(yè)務模塊進行功能擴展的系統(tǒng),該系統(tǒng)提供以下基本功能
    的頭像 發(fā)表于 05-13 09:31 ?1782次閱讀
    鴻蒙<b class='flag-5'>OpenHarmony</b>開發(fā):【<b class='flag-5'>編譯</b>構建指導】

    鴻蒙OpenHarmony:【常見編譯問題和解決方法】

    常見編譯問題和解決方法
    的頭像 發(fā)表于 05-11 16:09 ?2163次閱讀

    鴻蒙OpenHarmony技術:【Docker編譯環(huán)境】

    OpenHarmony為開發(fā)者提供了兩種Docker環(huán)境,以幫助開發(fā)者快速完成復雜的開發(fā)環(huán)境準備工作。
    的頭像 發(fā)表于 05-11 09:47 ?1473次閱讀
    鴻蒙<b class='flag-5'>OpenHarmony</b>技術:【Docker<b class='flag-5'>編譯</b>環(huán)境】

    鴻蒙OpenHarmony【小型系統(tǒng) 編譯】(基于Hi3516開發(fā)板)

    OpenHarmony支持hb和build.sh兩種編譯方式。此處介紹hb方式,build.sh腳本編譯方式請參考[使用build.sh腳本編譯源碼]。
    的頭像 發(fā)表于 05-10 15:59 ?699次閱讀
    鴻蒙<b class='flag-5'>OpenHarmony</b>【小型系統(tǒng) <b class='flag-5'>編譯</b>】(基于Hi3516開發(fā)板)

    鴻蒙OpenHarmony【標準系統(tǒng) 編譯】(基于RK3568開發(fā)板)

    OpenHarmony支持hb和build.sh兩種編譯方式。此處介紹hb方式,build.sh腳本編譯方式請參考[使用build.sh腳本編譯源碼]。
    的頭像 發(fā)表于 05-08 17:37 ?1127次閱讀
    鴻蒙<b class='flag-5'>OpenHarmony</b>【標準系統(tǒng) <b class='flag-5'>編譯</b>】(基于RK3568開發(fā)板)

    鴻蒙OpenHarmony:【 編譯異常處理】

    Linux編譯服務器終端輸入不識別的命令時提示“ImportError: No module named apt_pkg”
    的頭像 發(fā)表于 04-30 17:37 ?1195次閱讀
    鴻蒙<b class='flag-5'>OpenHarmony</b>:【 <b class='flag-5'>編譯</b>異常處理】

    鴻蒙OpenHarmony【搭建Ubuntu環(huán)境】

    在嵌入式開發(fā)中,很多開發(fā)者習慣于使用Windows進行代碼的編輯,比如使用Windows的Visual Studio Code進行OpenHarmony代碼的開發(fā)。但當前階段,大部分的開發(fā)板源碼還不
    的頭像 發(fā)表于 04-19 16:53 ?1277次閱讀
    鴻蒙<b class='flag-5'>OpenHarmony</b>【搭建Ubuntu環(huán)境】

    OpenHarmony開發(fā)學習:【源碼下載和編譯

    本文介紹了如何下載鴻蒙系統(tǒng)源碼,如何一次性配置可以編譯三個目標平臺(`Hi3516`,`Hi3518`和`Hi3861`)的編譯環(huán)境,以及如何將源碼編譯為三個目標平臺的二進制文件。
    的頭像 發(fā)表于 04-14 09:36 ?936次閱讀
    <b class='flag-5'>OpenHarmony</b>開發(fā)學習:【源碼下載和<b class='flag-5'>編譯</b>】

    OpenHarmony南向能力征集令

    1、適配過程中缺少哪些接口能力或者南向能力,需要OpenHarmony去補齊的?例如內核、編譯、器件適配、單板適配等; 2、對標linux,需要OpenHarmony提供哪些能力?比如V4L2
    發(fā)表于 04-09 15:32

    [鴻蒙]OpenHarmony4.0的Rust開發(fā)

    。 OpenHarmony 為了集成 C/C++ 代碼和提升編譯速度,使用了 GN + Ninja 的編譯構建系統(tǒng)。GN 的構建語言簡潔易讀,Ninja 的匯編級編譯規(guī)則直接高效。 為
    的頭像 發(fā)表于 02-26 17:28 ?884次閱讀
    [鴻蒙]<b class='flag-5'>OpenHarmony</b>4.0的Rust開發(fā)

    OpenHarmony 移植:build lite 編譯構建過程

    配置完畢產品解決方案、芯片開發(fā)板解決方案,就可以執(zhí)行 hb build 進行編譯。但是產品解決方案代碼是如何被調用編譯的? 芯片開發(fā)板解決方案代碼是如何被調用編譯的?內核代碼如何被調用編譯
    的頭像 發(fā)表于 02-19 16:19 ?947次閱讀

    淺談兼容 OpenHarmony 的 Flutter

    拓展,可支持使用 Flutter Tools 指令編譯和構建 OpenHarmony 應用程序。 倉庫的 commit 記錄顯示,OpenHarmony 使用的 Flutter 版本是 3.7 穩(wěn)定分支
    的頭像 發(fā)表于 02-02 15:22 ?612次閱讀
    淺談兼容 <b class='flag-5'>OpenHarmony</b> 的 Flutter
    主站蜘蛛池模板: 蜜臀AV精品久久无码99| 日本动漫henta videos| 国产午夜理论片YY8840Y| 成人性生交片无码免费看| 99国产精品综合AV无码| 中文字幕天堂久久精品| 一个人免费观看HD完整版| 亚洲日韩乱码人人爽人人澡人| 亚洲白色白色在线播放| 亚洲AV永久无码精品澳门| 亚洲AV无码一区二区三区乱子伦 | 草比比过程图| GAY2022空少被体育生暴菊| 99re久久热免费视频| 99久久伊人一区二区yy5o99| 99久久久无码国产精精品| aaa级黄影片| 亚洲九九视频| 亚洲免费人成在线视频观看| 亚洲色婷婷久久精品AV蜜桃| 亚洲偷偷自拍免费视频在线| 一品道门在线观看免费视频| 最近的2019中文字幕国语HD| 51国产午夜精品免费视频| ai换脸女明星被躁在线观看免费| jealousvue成熟40岁| 大地影院日本韩国电影免费观看| 丰满少妇69激情啪啪无码| 国产精品人妻一区免费看8C0M| 国产伦子沙发午休系列资源曝光| 国产在线aaa片一区二区99| xxx成熟xxx| 高清无码中文字幕影片| 国产色婷婷亚洲99麻豆| 九九热在线视频观看这里只有精品| 浪荡受自我调教纯肉BL| 麒麟色欧美影院在线播放| 视频三区 国产盗摄| 亚洲人成77777在线视频| 18岁末年禁止观看免费1000个| av视频在线免播放观看|