精品欧美一区二区三区在线观看 _久久久久国色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一二三四| 狠狠v欧美ⅴ日韩v亚洲v大胸| 老司机午夜精品视频在线观看| 亚洲日本欧美日韩高观看| 欧美一级视频在线| 激情在线视频播放| 久久久久99精品一区| 成人免费看黄网站| 久久免费激情视频| 亚洲精品久久| 亚洲天堂av女优| 波多野结衣电影免费观看| 国产伦精品一区二区三区视频金莲| 国产精品乱子久久久久| 精品国产乱码久久久久久郑州公司 | 欧洲精品在线视频| 久久久久久久久久久久国产| 亚洲综合小说图片| 91精品久久久久久蜜臀| 天天摸天天碰天天添| 性欧美高清come| 欧美国产精品一区二区| 九九九九久久久久| 国产喷水吹潮视频www| 久久蜜桃精品| 国语自产精品视频在线看一大j8 | 亚洲精品国产一区二区精华液| 欧美 日韩 国产在线| 精品欧美一区二区精品少妇| 免费高清不卡av| 97精品视频在线观看| 四虎永久免费在线| 久久电影院7| 国产视频在线观看一区二区| 亚洲熟女一区二区三区| 日韩欧美三区| 在线看日本不卡| 欧美国产亚洲一区| 成人免费高清观看| 一区二区三区免费| 午夜探花在线观看| 毛片免费不卡| 国产精品天干天干在观线| 蜜桃网站成人| 香蕉视频免费看| 成人综合婷婷国产精品久久免费| 91丨九色丨国产在线| 亚洲视频久久久| 奇米影视7777精品一区二区| 国产99在线|中文| 丁香六月婷婷综合| 国产九九精品| 欧美最顶级丰满的aⅴ艳星| 精品无码久久久久久久| 欧美色一级片| 欧美人与物videos| 久操免费在线视频| 欧美日韩p片| 欧美成人在线网站| 久久免费在线观看视频| 在线精品在线| 午夜精品99久久免费| 在线观看精品国产| 亚洲一区久久| 国产精品va在线播放| 黄色一级视频免费看| 日韩和的一区二区| 国产精品日日做人人爱| 97人妻一区二区精品免费视频| 韩日av一区二区| 亚洲综合小说区| 亚洲毛片在线播放| www.66久久| 日本不卡一区| 免费成人黄色| 一个色妞综合视频在线观看| 日本毛片在线免费观看| 欧美va在线观看| 欧美卡1卡2卡| 四虎精品一区二区| 精品在线手机视频| 日韩一区二区在线视频| 欧美成人三级在线观看| 亚洲少妇诱惑| 91久久精品国产91性色| 性生活三级视频| 久久久久久亚洲综合影院红桃| 日韩中文字幕一区| 国产黄a三级三级三级av在线看| 亚洲自拍另类综合| 免费大片在线观看| 99综合久久| 亚洲国产91色在线| 久久婷婷五月综合| 国产伊人精品| 国产精品久久二区| 欧美亚洲精品在线观看| 欧美激情资源网| 九九热只有这里有精品| 99久久精品一区二区成人| 日韩一区二区电影| 西西444www无码大胆| 欧美/亚洲一区| 青青久久av北条麻妃海外网| 国产又粗又猛又黄| 99re在线精品| 日韩video| 亚洲四虎影院| 亚洲精品久久久一区二区三区 | 欧美成人自拍| 91av在线精品| 午夜精品一区二区三| 国产欧美1区2区3区| 草草视频在线免费观看| av成人在线网站| 亚洲男人的天堂网站| 久久久久久激情| 久热成人在线视频| 免费久久99精品国产自| 免费网站在线观看人| 777欧美精品| 国精产品一区二区三区| 亚洲激情国产| 99九九电视剧免费观看| 拍真实国产伦偷精品| 色综合久久中文综合久久97| 中文字幕人妻一区二区三区| 欧美激情麻豆| 国产精品永久在线| 久草视频在线看| 偷窥国产亚洲免费视频| 中文字幕视频观看| 女人色偷偷aa久久天堂| 国产主播在线一区| av在线播放网站| 日本韩国欧美国产| 五月婷婷综合在线观看| 99精品视频免费观看| 国产精品久久久一区二区三区| 高潮毛片在线观看| 7777精品伊人久久久大香线蕉| 国产免费一区二区三区网站免费| 国产精品一二| 鲁丝一区二区三区免费| 久草在线中文最新视频| 日韩精品一区二区三区在线 | 在线看片不卡| 亚洲va欧美va在线观看| 国产精品剧情一区二区在线观看| 欧美日韩成人综合| 黄色激情小视频| 久久福利资源站| av磁力番号网| 欧美久久一区二区三区| 蜜臀久久99精品久久久久久宅男 | 亚洲第一福利视频| 麻豆一区二区三区精品视频| 粉嫩一区二区三区在线看| 国产91沈先生在线播放| 91成人入口| 97久久久免费福利网址| 日本啊v在线| 欧美性大战久久久久久久蜜臀| 天堂av网手机版| 久久99日本精品| av日韩在线看| 日韩中出av| 国产精品免费久久久久久| 生活片a∨在线观看| 777亚洲妇女| 久久亚洲精品大全| 99re这里只有精品首页| 日韩中文字幕二区| 日韩一区电影| 成人在线免费观看一区| 日本不卡免费高清视频在线| 亚洲小视频在线| av中文字幕免费| 欧美日韩亚洲高清| 国产黄色大片免费看| 国产一区二区在线观看免费| av免费观看国产| 精品日韩欧美一区| 96久久精品| av综合电影网站| 久久av.com| 天天干天天操av| 欧美日韩精品一区二区三区蜜桃 | 日本黄色网址大全| 麻豆精品一区二区三区| 欧美高清中文字幕| 国产成人久久| 99视频免费观看蜜桃视频| 欧美成人黑人| 欧美成人激情图片网| 欧美在线观看在线观看| 91精品欧美福利在线观看| www欧美在线| 亚洲精品videosex极品| 日本激情小视频| 粉嫩绯色av一区二区在线观看| 日韩精品一区二区三区不卡| 精品电影一区| 一区二区三区四区| 欧美一级二级三级视频| 亚洲自拍偷拍色片视频| 色香欲www7777综合网| 欧美激情精品久久久久久免费印度| 国产在线网站| 亚洲福利精品在线| 国产又粗又长视频| 一本大道久久精品懂色aⅴ| 清纯粉嫩极品夜夜嗨av| 中文字幕日韩一区二区| 亚洲午夜久久久久久久久红桃| 国产一区91精品张津瑜| 蜜臀视频一区二区三区| 欧美日本在线| 8x8x华人在线| 天天精品视频| 日韩精品一区二区三区丰满| 欧美五码在线| 国产精品久久7| 日韩免费一级| 91精品国产综合久久香蕉最新版 | av小次郎在线| 日韩中文字幕免费视频| 国产一区二区三区福利| 日韩精品视频免费专区在线播放| 亚洲国产精品久久人人爱潘金莲 | 国产不卡精品视男人的天堂| 9999在线视频| 欧美极品在线视频| 中中文字幕av在线| 成人97在线观看视频| 欧洲美女少妇精品| 日韩视频免费看| 日本免费视频在线观看| 日韩在线观看免费全| 黄色免费在线播放| 亚洲日韩中文字幕| 免费福利在线视频| 亚洲人成电影在线播放| 久久久pmvav| 日韩电视剧免费观看网站| 手机看片1024日韩| 亚洲激情国产精品| 婷婷五月综合激情| 精品香蕉一区二区三区| 全部免费毛片在线播放网站| 精品一区二区三区三区| 日产精品久久久久久久性色| 国产婷婷成人久久av免费高清| 亚洲区小说区图片区| 亚洲免费av片| 大乳在线免费观看| 综合久久五月天| 免费av在线播放| 欧美成人亚洲成人| 91豆花视频在线播放| 欧美性受xxxx黑人猛交| 欧美不卡高清一区二区三区| 国产精品视频yy9099| 伊人国产精品| 国产精品乱码一区二区三区| 日韩美女国产精品| 偷拍视频一区二区| 你懂的国产精品| av动漫在线看| 免费在线视频一区| 99热这里只有精品2| 91污片在线观看| av网站免费在线看| 国产精品视频线看| 丁香花五月激情| 精品久久久久久久久久| 无码视频一区二区三区| 欧美精品1区2区3区| 二区三区在线视频| 亚洲欧洲午夜一线一品| 成人影院www在线观看| 欧美精品久久久久久久| 色是在线视频| 国产日韩精品在线观看| 粉嫩av一区二区| 日本最新一区二区三区视频观看| 亚洲精品二区三区| 欧美 日韩 国产一区| 精品无人区卡一卡二卡三乱码免费卡| 四虎成人免费视频| 国产日产亚洲精品系列| 欧美做爰爽爽爽爽爽爽| 福利视频一区二区| 国产影视一区二区| 日韩成人xxxx| 亚洲wwwww| 国产精品成人播放| 久久亚洲黄色| 99精品视频网站| 久久xxxx| 亚洲乱妇老熟女爽到高潮的片 | 97久久香蕉国产线看观看| 亚洲va欧美va国产综合剧情 | 在线成人一区二区| 波多野结衣在线播放| 成人一区二区电影| 国产亚洲一卡2卡3卡4卡新区 | 亚洲精品久久久久久国| 婷婷久久综合九色综合绿巨人 | 国产高清在线观看免费不卡| 免费污网站在线观看| 一区二区三区在线免费播放| 中文字幕有码视频| 国产婷婷成人久久av免费高清 | 三大队在线观看| 国产精品伦理一区二区| www.com亚洲| 亚洲国产精品va| 亚洲国产精品精华素| 国产欧美中文字幕| 欧美一级精品| 国产在线观看福利| av在线播放成人| 久久久久久久久久99| 欧美一区二区人人喊爽| 91社区在线| 国产成人亚洲综合青青| 日韩精品免费一区二区夜夜嗨| 农民人伦一区二区三区| 国产成人午夜精品5599| 国产天堂av在线| 欧美日韩精品一二三区| av大片在线播放| 日韩免费精品视频| 一道本一区二区三区| 无码人妻丰满熟妇区96| 99久久久久久| 国产污污视频在线观看| 精品免费日韩av| 蜜桃传媒在线观看免费进入| av资源一区二区| 狠狠爱综合网| 国产综合内射日韩久| 亚洲资源中文字幕| 人妻91麻豆一区二区三区| 欧美精品激情blacked18| 亚洲日本va中文字幕| wwwwww欧美| 国产一级精品在线| 九九热视频精品| 亚洲的天堂在线中文字幕| 99re6在线精品视频免费播放| 韩日午夜在线资源一区二区| 国产欧美短视频| 97人妻精品一区二区免费| 91国偷自产一区二区三区成为亚洲经典 | 亚洲欧美一区二区激情| 成人影院入口| 日本中文不卡| 国模大尺度一区二区三区| 黄色片在线观看网站| 精品成a人在线观看| 免费看男女www网站入口在线 | 亚洲一区二区免费视频| 亚洲精品久久久狠狠狠爱 | 国产大片一区二区| 国产极品美女高潮无套嗷嗷叫酒店| 亚洲精品福利免费在线观看| 极品美女一区| 一区二区三区四区在线视频| 国产精品系列在线观看| 在线看成人av| 一道本无吗dⅴd在线播放一区| 欧美高清免费| 女人帮男人橹视频播放| 久久久久国产一区二区三区四区| 一二三区在线播放| 欧美黑人又粗大| 日韩动漫一区| 波多野结衣xxxx| 亚洲一区二区三区国产| 岛国视频免费在线观看| 91传媒在线免费观看| 亚洲欧美久久| 污污的视频在线免费观看| 日韩大陆欧美高清视频区| 婷婷精品久久久久久久久久不卡| 国产 日韩 欧美在线| 中文字幕不卡在线观看| 亚洲成人黄色片| 国产精品极品美女在线观看免费| 欧美fxxxxxx另类| 加勒比综合在线| 日韩一卡二卡三卡国产欧美| 日韩电影免费观看高清完整版| 91制片厂免费观看| 91视频精品在这里| 国产美女永久免费|