精品欧美一区二区三区在线观看 _久久久久国色av免费观看性色_国产精品久久在线观看_亚洲第一综合网站_91精品又粗又猛又爽_小泽玛利亚一区二区免费_91亚洲精品国偷拍自产在线观看 _久久精品视频在线播放_美女精品久久久_欧美日韩国产成人在线

Hi3861_WiFi IoT工程的一點理解

系統
文章由鴻蒙社區產出,想要了解更多內容請前往:51CTO和華為官方戰略合作共建的鴻蒙技術社區https://harmonyos.51cto.com

[[395942]]

想了解更多內容,請訪問:

51CTO和華為官方合作共建的鴻蒙技術社區

https://harmonyos.51cto.com

目錄

  • 1. 關于工程本身
  • 2. ohos_bundles
  • 3.工程的目錄結構

更新記錄:

1. 關于工程本身

老規矩,從0開始。

在Linux環境下的DevEco IDE下創建新工程“Hi3861_Wifiiot”,設置如下圖,點擊“創建”,會在Projs目錄生成默認的工程。

全部文件都查看一遍,看上去只有 bundle.json 有點有用信息:

  1.  
  2.   "name""default"
  3.  
  4.   "version""1.0.0"
  5.  
  6.   "description""This is a default bundle"
  7.  
  8.   "publishAs""source"
  9.  
  10.   "scripts": { 
  11.  
  12.     "build""make" 
  13.  
  14.   }, 
  15.  
  16.   "dirs": { 
  17.  
  18.     "headers": [ 
  19.  
  20.       "headers/*.h" 
  21.  
  22.     ], 
  23.  
  24.     "src": [ 
  25.  
  26.       "src/*.c" 
  27.  
  28.     ], 
  29.  
  30.     ".""Makefile" 
  31.  
  32.   }, 
  33.  
  34.   ........[省略] 
  35.  
  36.   "dependencies": {}, 
  37.  
  38.   "devDependencies": {} 
  39.  

按照 README.md的提示,執行“hpm build”,生成了 bin/hello 和 bundle-lock.json,執行“./bin/hello”打印“Hello world”,而bundle-lock.json則是空的。

至此,看上去工程跟鴻蒙系統/工程沒多少關系,其他文件都可以刪掉,唯獨“bundle.json”不能刪除,要是刪除這個文件的話,下面這步就會 install 失敗。

在DevEco IDE的HPM標簽下找到“@ohos/wifi_iot”,選擇“Install to project”/“Hi3861_Wifiiot”。

安裝完成后,就在Hi3861_Wifiiot目錄下得到了

看上去很干凈的目錄,暫不用IDE一鍵編譯,先試試命令行下的“hpm build”

  1. lkz@ubuntu:~/Work/Projs/Hi3861_Wifiiot$ hpm build 
  2.  
  3. [WARN] -  The license of @ohos/gn is gn LICENSE. Notice open-source risks. 
  4.  
  5. [WARN] -  The license of @ohos/gcc_riscv32 is GPL V2. Notice open-source risks. 
  6.  
  7. [WARN] -  The license of @ohos/wifi_iot is NA. Notice open-source risks. 
  8.  
  9. Building: default 
  10.  
  11. make: *** No targets specified and no makefile found.  Stop.  //可能是我刪掉了makefile的緣故 
  12.  
  13. Build error: Worker stopped with exit code 2 
  14.  
  15. Check error details by "/home/lkz/.hpm/log/debug/debug.2021-04-24-15-40-57.log" 
  16.  
  17.   
  18.  
  19. lkz@ubuntu:~/Work/Projs/Hi3861_Wifiiot$ ln -s build/lite/build.py build.py 
  20.  
  21. lkz@ubuntu:~/Work/Projs/Hi3861_Wifiiot$ python build.py wifiiot 
  22.  
  23. [197/197] STAMP obj/vendor/hisi/hi3861/hi3861/run_wifiiot_scons.stamp 
  24.  
  25. ohos wifiiot build success! 

out目錄下也有正常的輸出。

2. ohos_bundles

Hi3861_Wifiiot項目下,很明顯比鴻蒙系統完整代碼的目錄多了一個ohos_bundles文件夾和三個json文件,我也注意到在上一步的“Install to project”/“Hi3861_Wifiiot”時,工程目錄下最先生成ohos_bundles目錄。

下面分別看看三個json文件和ohos_bundles目錄都有什么東西。

bundle.json

看上去比“Install to project”前,多了一點東西:

  1. "base": { 
  2.  
  3.        "name""@ohos/wifi_iot"
  4.  
  5.        "version""^1.0.3" 
  6.  
  7.    }, 

bundle-lock.json

看上去列出了本工程所有的組件共計24個壓縮包的下載地址和checksum,最后一個"@ohos/wifi_iot"還列出了這個組件依賴于上面的所有組件。

product.template.json

  1. "ohos_version""OpenHarmony 1.0"
  2.  
  3. "board""hi3861v100"
  4.  
  5. "kernel""liteos_riscv"
  6.  
  7. "compiler""gcc"
  8.  
  9. "subsystem": [], 
  10.  
  11. "vendor_adapter_dir""//vendor/hisi/hi3861/hi3861_adapter"
  12.  
  13. "third_party_dir""//vendor/hisi/hi3861/hi3861/third_party"

很明顯的信息。不過為什么要特別列出 "vendor_adapter_dir"?有什么特別的作用嗎?還不清楚。

ohos_bundles/@ohos/目錄

很明顯這是全工程24個組件的獨立目錄。

隨便進入build看一下,熟悉的就不說了,看一下bundle.json:

  1.  
  2.     "name""@ohos/build"
  3.  
  4.     "version""1.0.1"
  5.  
  6.     "publishAs""code-segment"

"description": "編譯構建提供了一個在GN與ninja基礎上的編譯構建框架。

支持以下功能:構建不同芯片平臺的產品。如:Hi3518EV300平臺的ipcamera產品,

Hi3516DV300平臺的ipcamera產品,Hi3861平臺的wifi模組產品。

構建HPM包管理配置生成的自定義產品。",

  1. "scripts": { 
  2.  
  3.       "install""DEST_PATH=${DEP_BUNDLE_BASE}/build &&mkdir -p $DEST_PATH && cp -r ./* $DEST_PATH" 
  4.  
  5.   }, 
  6.  
  7.   "keywords": [ 
  8.  
  9.       "build" 
  10.  
  11.   ], 
  12.  
  13.   "license""Apache V2"
  14.  
  15.   "repository"""
  16.  
  17.   "homepage"""
  18.  
  19.   "tags": [ 
  20.  
  21.       "build" 
  22.  
  23.   ], 
  24.  
  25.   "ohos": { 
  26.  
  27.       "os""1.0.0"
  28.  
  29.       "kernel""liteos-a,liteos-m"
  30.  
  31.       "board""hi3516,hi3518,hi3861" 
  32.  
  33.   } 

看上去都是很直白的,就“scripts”這個,看上去就是要執行腳本命令。

DEP_BUNDLE_BASE應該是部署bundle的base目錄,也就是項目Hi3861_Wifiiot目錄本身。

在Hi3861_Wifiiot/build目錄下遞歸創建子目錄,把當前目錄下的所有東西全部遞歸拷貝到Hi3861_Wifiiot/build目錄下。

所以Hi3861_Wifiiot/build目錄就是 Hi3861_Wifiiot/ohos_bundles/@ohos/build 目錄的拷貝。

類似的,其他組件基本上也都是這么個情況,至于它們分別拷貝到代碼根目錄下的什么地方,請自己去仔細查看bundle.json進行梳理。

不過三個組件有點例外:gcc_riscv32、gn、ninja。這三個是屬于構建編譯系統的,他們的bundle.json的共同點都是去執行scripts目錄下的install.sh腳本,先去倉庫地址下載壓縮包,然后解壓到同目錄下。

前面提到“@ohos/wifi_iot”是依賴于其余23個組件的,就必須要仔細看一下它的bundle.json,果然:

  1. "scripts": { 
  2.  
  3.    "dist": "export PATH=$PATH:${DEP_OHOS_gcc_riscv32}/gcc_riscv32/bin: ${DEP_OHOS_gn}/gn:${DEP_OHOS_ninja}/ninja  
  4.  
  5.          && hpm run parse && hpm run select && hpm run connect && hpm run compile", 
  6.  
  7.          "parse""node ./dist_scripts/parse_platform_hpm.js hi3861v100_liteos_riscv"
  8.  
  9.          "select""node ./dist_scripts/select_product.js"
  10.  
  11.          "connect""node ./dist_scripts/connect_subsystem.js wifiiot"
  12.  
  13.          "compile": "ln -sf ${DEP_BUNDLE_BASE}/build/lite/build.py ${DEP_BUNDLE_BASE}/build.py && 
  14.  
  15.                             cd ${DEP_BUNDLE_BASE} &&python ${DEP_BUNDLE_BASE}/build.py wifiiot", 
  16.  
  17.          "install""cp product.template.json ${DEP_BUNDLE_BASE}"
  18.  
  19.          "eco""echo $target" 
  20.  
  21.  }, 

先把三個構建編譯工具所在目錄的bin添加到環境變量中,再執行parse、select、connect、compile命令,前三個命令的腳本都在當前目錄的dist_scripts內,而compile命令則是在代碼根目錄下先創建build.py的軟鏈接,再切換到根目錄下執行python build.py wifiiot開始構建和編譯。根據《鴻蒙系統的編譯流程及分析》一文中提到的Gn+Ninja的工作原理和步驟,會先去把它所依賴的23個組件都編譯好,最終生成用于燒錄開發板的bin文件。

這就很明白了。

3.工程的目錄結構

我在《鴻蒙系統的編譯流程及分析》(Link: https://harmonyos.51cto.com/posts/4070)一文中大致整理了一下鴻蒙系統的build、out目錄結構,整個鴻蒙系統的目錄結構太復雜了,我的理解還不到位,沒法整理出來。不過這個Hi3861_Wifiiot工程,是經過hpm裁剪了的,總共才24個組件,內核也簡單了很多,再加上這段時間我調試Hi3861的開發板,對工程內文件/代碼有了一點點了解,也到了做一次整理的時候了,所以我又整理出了下面這個表格。粗淺的理解,希望能對大家有所幫助,更詳細的信息,還是需要各位自己去看README和讀代碼,能親自在開發板上調試效果會更好。

想了解更多內容,請訪問:

51CTO和華為官方合作共建的鴻蒙技術社區

https://harmonyos.51cto.com

 

責任編輯:jianghua 來源: 鴻蒙社區
相關推薦

2021-04-29 09:52:25

鴻蒙HarmonyOS應用

2021-04-30 09:43:27

鴻蒙HarmonyOS應用

2020-10-16 09:50:37

Hi3861WiFi熱點

2021-12-31 15:07:00

鴻蒙HarmonyOS應用

2023-05-26 16:07:14

Hi3861Wifi模塊

2021-02-02 15:52:17

鴻蒙HarmonyOS應用開發

2014-09-17 10:30:25

代碼

2020-11-23 13:09:42

HI3861

2020-11-03 11:39:22

wifi小車

2015-11-02 09:43:25

ASP.NET異步編程

2020-10-30 09:41:44

鴻蒙Hi3861WiFi小車

2022-03-15 15:00:59

Hi3861Pin接口鴻蒙

2022-09-06 15:25:22

Wifi設備開發

2021-06-25 15:32:13

鴻蒙HarmonyOS應用

2009-09-16 10:48:31

PHP正則表達式

2010-05-20 15:29:43

優化IIS

2022-03-07 15:05:58

HTTPHi3861數據解析

2021-09-30 10:11:05

鴻蒙HarmonyOS應用

2021-03-16 09:49:16

鴻蒙HarmonyOS應用

2009-04-13 11:50:14

經驗交流職業分析面試
點贊
收藏

51CTO技術棧公眾號

五月婷婷综合激情网| 三级在线免费观看| 亚洲av综合一区| 99久久.com| 91精品国产色综合久久久蜜香臀| 国产爆乳无码一区二区麻豆 | 91精品黄色片免费大全| 国产性生活免费视频| 水莓100国产免费av在线播放| 日韩av中文字幕一区二区| 久久av在线播放| 国产精品三级在线观看无码| 亚洲视频资源| 欧美日韩国产一区在线| 成人在线视频一区二区| 亚洲成人av在线| 成人性生生活性生交12| 亚洲奶水xxxx哺乳期| 久久久精品蜜桃| 国产传媒一区| 97在线公开视频| 久久人人精品| 欧美—级高清免费播放| 亚洲色图27p| 美女毛片一区二区三区四区最新中文字幕亚洲 | 久久久久99精品成人片毛片| 国产一区二区三区四区五区传媒 | 日本一级在线观看| 免费观看在线一区二区三区| 色综合一本到久久亚洲91| 久久久久久一级片| 国产91视觉| 国产乱人乱偷精品视频a人人澡| 国产一区二区三区久久| 欧美激情亚洲激情| 黄色录像一级片| 日本道不卡免费一区| 亚洲国产高潮在线观看| 岛国大片在线免费观看| 国产精品毛片久久久久久久久久99999999 | 秋霞影院一区二区| 情事1991在线| 成人毛片18女人毛片| 极品av少妇一区二区| www.亚洲天堂| а天堂中文在线资源| 精品一区二区三区的国产在线观看| 日韩精品免费综合视频在线播放 | 国产精品白丝在线| 日韩av不卡在线播放| 台湾av在线二三区观看| 99在线精品免费| 国产精品久久7| 好男人在线视频www| 国产成人免费视| 国产超碰91| 免费观看国产精品| 丁香婷婷综合色啪| 国产乱子伦精品| 婷婷在线免费观看| 91色在线porny| 久久综合伊人77777麻豆| 午夜18视频在线观看| 99久久久久久| 欧美精品一区二区视频 | 香蕉免费一区二区三区在线观看 | 日韩精品系列| 久久久精品免费观看| 视频二区一区| 看黄网站在线观看| 亚洲欧美日韩国产中文在线| av磁力番号网| eeuss鲁一区二区三区| 精品国产精品自拍| 国产麻花豆剧传媒精品mv在线| 中国色在线日|韩| 在线免费观看日韩欧美| 九九九九九九九九| 日韩一区网站| 亚洲精品色婷婷福利天堂| 精品少妇人妻一区二区黑料社区| 国产一区二区观看| 日韩一区av在线| 免费一级片在线观看| 国产精品免费看| 国产日韩中文字幕在线| 亚洲春色一区二区三区| 91网上在线视频| 一区二区三区的久久的视频| 欧洲中文在线| 在线精品视频免费播放| 欧美日韩理论片| 国产精品高潮呻吟久久久久| 亚洲网站在线播放| 免费人成在线观看| 日韩中文字幕麻豆| 91免费看网站| 欧美少妇另类| 亚洲另类在线一区| 午夜dv内射一区二区| 国产午夜久久av| 亚洲久久久久久久久久| 日韩成人短视频| 香蕉国产精品偷在线观看不卡| 91精品在线影院| 可以免费看污视频的网站在线| 综合激情成人伊人| 国产一级不卡毛片| 91蜜桃臀久久一区二区| 原创国产精品91| 精品人妻在线播放| 老司机精品视频在线| 国产无套精品一区二区| 黄在线免费观看| 欧美无砖专区一中文字| 人妻av一区二区| 永久91嫩草亚洲精品人人| 日本乱人伦a精品| 黄色www视频| 亚洲三级在线免费观看| 日韩欧美黄色大片| 夜夜春成人影院| 久久久久久12| av av片在线看| 国产精品久久看| 一本久道综合色婷婷五月| 国产成人高清精品免费5388| 久久久精品免费| 中文资源在线播放| 久久综合999| 免费看一级大黄情大片| 亚洲一区网址| 美女福利视频一区| 一级aaaa毛片| 亚洲国产成人一区二区三区| 久久婷婷五月综合色国产香蕉| 99re8这里有精品热视频免费 | 极品视频在线| 精品1区2区在线观看| 欧美日韩国产精品综合 | 91国偷自产一区二区三区成为亚洲经典 | 久久99亚洲热视| 国产伦精品一区二区三区视频痴汉 | 亚洲综合第一| 成人午夜毛片| 色偷偷综合社区| 一级黄色大片网站| 国产精品欧美极品| 一区二区免费av| 希岛爱理一区二区三区| 成人天堂噜噜噜| 老司机午夜在线| 91精品免费在线观看| 我要看黄色一级片| 国产精品一二三区在线| 国产盗摄视频在线观看| 99精品视频在线免费播放| 久久精品国产2020观看福利| 一级淫片免费看| 亚洲人亚洲人成电影网站色| 亚洲成人福利视频| 在线欧美日韩| 欧美激情视频一区二区三区| 欧美色网一区| 色偷偷亚洲男人天堂| aa视频在线免费观看| 亚洲精品免费在线| 中文字幕一区二区三区人妻在线视频 | xvideos国产精品| 国产美女自慰在线观看| 一区二区三区在线观看欧美| 成熟妇人a片免费看网站| 99亚洲精品| 欧洲一区二区在线观看| 亚洲男男av| 久久久免费高清电视剧观看| 四虎精品在永久在线观看| 在线视频综合导航| 国产一二三区精品| 不卡av在线网| 99久久久无码国产精品6| 日韩综合精品| 国产精品一区二区三区在线观| 波多野结衣久久精品| 中文字幕亚洲一区| 亚洲精品一区二区三区蜜桃| 欧美性极品xxxx做受| 中文字幕免费视频| 国产麻豆精品95视频| www国产精品内射老熟女| 日韩精品第一区| 成人片在线免费看| 亚洲天堂电影| 欧美成aaa人片免费看| 亚洲人午夜射精精品日韩| 欧美日韩免费视频| 一级免费在线观看| 自拍偷在线精品自拍偷无码专区| www.88av| 国产在线精品国自产拍免费| 欧美日韩在线视频一区二区三区| 香港欧美日韩三级黄色一级电影网站| 国产精品伊人日日| 欧美亚洲人成在线| 18久久久久久| 新版中文在线官网| 在线看日韩欧美| 天天摸天天干天天操| 欧美情侣在线播放| 黑人精品无码一区二区三区AV| 亚洲视频资源在线| 干b视频在线观看| 不卡视频一二三四| 三级黄色片播放| 日本不卡高清视频| 久久久999视频| 午夜日韩视频| 中文字幕日韩一区二区三区| 欧美日韩123| 久久精品国产第一区二区三区最新章节| 日韩毛片免费视频一级特黄| 人人爽久久涩噜噜噜网站| 超清av在线| 久久97精品久久久久久久不卡| 自拍视频在线播放| 亚洲视频免费一区| 日韩欧美在线观看一区二区| 亚洲国产美女精品久久久久∴| 99热这里只有精品3| 欧美日韩国产中文| 中国女人一级一次看片| 色呦呦网站一区| 国产精品自拍99| 精品日本高清在线播放| 久久久一二三区| 亚洲美女视频在线观看| 永久免费未视频| 一区免费观看视频| 国产又粗又长又硬| 国产精品美女久久福利网站| 女人黄色一级片| 日本一区二区三区在线观看| 色哟哟精品观看| 国产亚洲欧洲997久久综合| 中国毛片在线观看| 久久综合色婷婷| 天天躁日日躁aaaa视频| 国产欧美一区二区三区鸳鸯浴| 五月婷婷综合在线观看| 91在线丨porny丨国产| 亚洲国产综合视频| 91老师片黄在线观看| 欧美 变态 另类 人妖| 91丨porny丨最新| 成年人在线观看av| 国产亚洲欧美色| 欧美激情视频二区| 成人免费一区二区三区视频| 色偷偷男人天堂| 亚洲天堂2016| 久久精品国产亚洲av高清色欲| 亚洲午夜私人影院| 九九热在线免费观看| 欧美特黄级在线| 亚洲精品国产精品国自产网站按摩| 欧美日韩久久不卡| 国产福利小视频| 亚洲韩国欧洲国产日产av| 深夜福利在线视频| 最新69国产成人精品视频免费| 国产三级在线播放| 性色av一区二区三区免费| 亚洲wwww| 亚洲一区久久久| 狼人精品一区二区三区在线| 日韩偷拍一区二区| 中文字幕乱码亚洲无线精品一区| 国产欧美精品aaaaaa片| 久热精品视频| 91视频福利网| 久久午夜羞羞影院免费观看| 日韩av毛片在线观看| 亚洲影院在线观看| 欧美一区二区三区网站| 欧美精品精品一区| 五月婷中文字幕| 日韩一区二区在线视频| 999福利在线视频| 国产精品免费视频xxxx| 91亚洲精品视频在线观看| 日韩影视精品| 狠狠综合久久| 日本特黄a级片| 成人高清av在线| 精品少妇一区二区三区密爱| 亚洲18女电影在线观看| 亚洲网站在线免费观看| 亚洲国产欧美一区二区三区久久| 午夜国产福利在线| 91av在线看| 久久久久毛片免费观看| 日本电影一区二区三区| 欧美日本三区| 亚洲第一中文av| 99久精品国产| 精品国产乱码久久久久久鸭王1| 日韩欧美国产一区二区| 亚洲第一页视频| 色妞一区二区三区| 新版的欧美在线视频| 亚洲最大福利视频| 日本道不卡免费一区| 久久国产亚洲精品无码| 国产成人亚洲综合a∨猫咪| 538精品视频| 欧美午夜视频一区二区| 黑人乱码一区二区三区av| 美女性感视频久久久| 澳门av一区二区三区| 久久久久无码国产精品一区| 欧美日韩视频| 99精品999| 国产精品丝袜一区| 神马久久久久久久| 亚洲国产成人精品女人久久久| 50度灰在线| 91免费精品视频| 999国产精品| 日本在线一二三区| 欧美极品美女视频| 中文字幕 国产精品| 亚洲欧美日韩天堂一区二区| 99热99re6国产在线播放| 97超碰在线播放| 91精品国产91久久综合| 日韩在线一区视频| 国产精品久线在线观看| 中国女人真人一级毛片| 中文字幕亚洲天堂| 国产综合色激情| 亚洲最大色综合成人av| 蜜臀av一区二区| 国产小视频你懂的| 欧美另类变人与禽xxxxx| 天堂аⅴ在线地址8| 国产日产欧美精品| 国产精品国产一区| 992kp免费看片| 亚洲少妇30p| 精品国产乱码一区二区三 | 亚洲精品不卡在线| 国产无遮挡裸体视频在线观看| 国产主播一区二区三区四区| 日韩天堂av| 波多野结衣 在线| 在线影院国内精品| 日本在线观看视频| 91精品国产综合久久久久久丝袜| 欧美91福利在线观看| 扒开伸进免费视频| 欧美视频在线视频| 在线免费黄色| 97神马电影| 久久国产精品久久久久久电车| 国产小视频自拍| 欧美久久高跟鞋激| 在线观看a级片| 久久综合狠狠综合久久综青草| 丝袜国产日韩另类美女| 日韩精品久久久久久久的张开腿让| 欧美高清hd18日本| 日本高清成人vr专区| 久久精品99| 老司机午夜精品99久久| 国产亚洲欧美精品久久久久久| 亚洲精品一区av在线播放| 欧美videos粗暴| 成人性生活视频免费看| 国产喷白浆一区二区三区| 国产免费叼嘿网站免费| 国语自产精品视频在线看| 国产伦精品一区二区三区千人斩| 天天色天天综合网| 婷婷中文字幕综合| 成人不用播放器| 99r国产精品视频| 日韩精品五月天| 免费在线一级片| 一区二区三区四区视频| 精品精品视频| 99久久国产宗和精品1上映| 亚洲精品自拍动漫在线| 免费av在线电影| 99久久国产免费免费| 天堂在线一区二区| 麻豆精品一区二区三区视频| 亚洲欧美另类自拍| 中文在线综合| 91丨九色丨蝌蚪| 色琪琪一区二区三区亚洲区|