在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

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

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

3天內不再提示

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

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

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

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

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

鴻蒙開源代碼結構介紹

鴻蒙開源了兩份源碼:

輕量級系統,小型系統

標準系統源碼(2.0 Canary)

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

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

01

準備環境

設備要求:Ubuntu18

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

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

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

docker 鏡像地址:

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

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

02

下載源碼

repo 介紹:當初由于安卓源碼非常大,為了方便管理各個倉庫,用 xml 的方式記錄了整個系統 git 庫的數量,名稱,路徑等,便于管理,鴻蒙也用的 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 同步線程數默認為4

repo sync -c -j8

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

更新二進制:

repo forall -c ‘git lfs pull’

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

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

執行預處理腳本:

cd /

。。/scripts/prepare.sh

這個腳本是去下載構建工具建立構建環境的,比如 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/ 目錄下:

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

05

系統目錄結構分析

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

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

可以看到系統自帶的桌面,狀態欄,設置等都是 hap。

繼續拆解 hap:

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

系統的 App 沒有了 Java 的身影,使用 JS 作為首選語言開發,非常的輕量。

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

關于個人暢想

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

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

編輯:jq

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

    關注

    5

    文章

    2135

    瀏覽量

    57379
  • Docker
    +關注

    關注

    0

    文章

    489

    瀏覽量

    11892
  • 開源代碼
    +關注

    關注

    0

    文章

    36

    瀏覽量

    2998
  • 鴻蒙系統
    +關注

    關注

    183

    文章

    2637

    瀏覽量

    66512
  • OpenHarmony
    +關注

    關注

    25

    文章

    3731

    瀏覽量

    16434

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

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

收藏 人收藏

    評論

    相關推薦

    OpenHarmony-5.0.0的RK3588始終編譯不過去,有大佬有開源方案可以參考一下嗎?

    目前把openHarmony的5.1版本的RK3588編譯過去了 但是openHarmony-5.0.0的RK3588始終編譯不過去,有大佬有開源方案可以參考一下嗎?
    發表于 01-13 16:04

    OpenHarmony源碼編譯后燒錄鏡像教程,RK3566鴻蒙開發板演示

    本文介紹瑞芯微主板/開發板編譯OpenHarmony源碼后燒錄鏡像的教程,觸覺智能Purple Pi OH鴻蒙開發板演示。搭載了瑞芯微RK3566四核處理器,樹莓派卡片電腦設計,支持開源鴻蒙OpenHarmony3.2-5.0系
    的頭像 發表于 12-30 10:08 ?135次閱讀
    <b class='flag-5'>OpenHarmony</b>源碼<b class='flag-5'>編譯</b>后燒錄鏡像教程,RK3566鴻蒙開發板演示

    openharmony移植AT32F407編譯時錯誤

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

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

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

    鴻蒙OpenHarmony【輕量系統 編譯】 (基于Hi3861開發板)

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

    鴻蒙OpenHarmony開發:【編譯構建指導】

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

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

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

    鴻蒙OpenHarmony技術:【Docker編譯環境】

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

    鴻蒙OpenHarmony【小型系統 編譯】(基于Hi3516開發板)

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

    鴻蒙OpenHarmony【標準系統 編譯】(基于RK3568開發板)

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

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

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

    OpenHarmony開發學習:【源碼下載和編譯

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

    [鴻蒙]OpenHarmony4.0的Rust開發

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

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

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

    淺談兼容 OpenHarmony 的 Flutter

    拓展,可支持使用 Flutter Tools 指令編譯和構建 OpenHarmony 應用程序。 倉庫的 commit 記錄顯示,OpenHarmony 使用的 Flutter 版本是 3.7 穩定分支
    的頭像 發表于 02-02 15:22 ?640次閱讀
    淺談兼容 <b class='flag-5'>OpenHarmony</b> 的 Flutter
    主站蜘蛛池模板: 亚洲卡1卡2卡新区网站| 色噜噜人体337p人体| 久久久夜| 黄色avav| 欧美性白人极品1819hd| 看视频免费网址| 日本一区不卡视频| 国产三级观看久久| tv天堂| 嫩草黄色影院| 久久婷婷综合中文字幕| 国产五月| 天天舔| 国产精品资源在线观看网站| 欧美性猛交xxxx免费| 国产午夜三级| 五月婷婷激情在线| 色99在线| 国产乱码精品一区二区三| 亚洲视频色| 99久久久精品| 手机看片中文字幕| 色中色综合网| 69自拍视频| 日韩操| 欧美最猛黑人xxxx黑人猛交69| 亚洲男女免费视频| 性欧美护士18xxxxhd| 欧美色婷婷| 嫩草黄色影院| www伊人| 女女同免费播放毛片| 黄色在线观看网站| 在线免费视频你懂的| 日本a级影院| 第一福利在线| 国产又爽又黄又粗又大| 日本不卡一区二区三区视频 | 伊人网综合在线视频| 黄黄的网站| 男女一区二区三区免费|