openharmony 運行代碼操作
openharmony 運行代碼,本文主要介紹windows環(huán)境下OpenHarmony社區(qū)代碼操作:代碼下載,開發(fā)環(huán)境搭建,版本編譯,燒寫,掛載,代碼運行,上庫等完整操作流程總結;
本文以xts_acts倉庫,Hi3516開源板子操作為例。
主要操作是在Ubuntu子系統(tǒng)操作,本地只有HiTool版本燒寫和代碼編輯工具Visual Studio Code(操作過程中有些安裝包和軟件獲取不便的,可以直接找我獲?。?/p>
OpenHarmony社區(qū)文檔:https://device.harmonyos.com/cn/docs/
代碼倉庫地址:https://openharmony.gitee.com
OpenHarmony_Hi3861Ubuntu編譯環(huán)境搭建測試套編譯用例執(zhí)行操作總結:
https://blog.csdn.net/nanzhanfei/article/details/115841263
OpenHarmony-Hi3518EV300掛載燒寫:
https://blog.csdn.net/nanzhanfei/article/details/115834734?spm=1001.2014.3001.5501
openharmony 運行代碼,目錄
Windows環(huán)境中準備Ubuntu
獲取OpenHarmony源碼
編譯
燒寫
NFS掛載
windows本地代碼編輯
代碼上庫
提交失敗項解決
附件
Windows環(huán)境中準備Ubuntu
使用Windows10的WSL的Ubuntu子系統(tǒng),網(wǎng)上有很多安裝的分享,這里不做介紹,也可按照以下InsStep直接安裝,默認安裝是安裝在系統(tǒng)盤下的,具體路徑如下,所有Ubuntu的內容都在這個路徑下。
C:\Users\username\AppData\Local\Packages\CanonicalGroupLimited.Ubuntu20.04onWindows_79rhkp1fndgsc\LocalState\rootfs
InsStep:
1.打開設置->安全和更新->開發(fā)者選項,選擇為“開發(fā)人員模式”;
2.Win + R運行control appwiz.cpl指令,在啟用或關閉Windows功能中勾選適用于Linux的Windows子系統(tǒng)和虛擬機平臺兩項啟用,重啟;
3.微軟商店搜索Ubuntu安裝,安裝完畢直接啟動并設置初始用戶名密碼便可以進入Ubuntu子系統(tǒng);
這里介紹一下如何將安裝好的Ubuntu子系統(tǒng)從系統(tǒng)盤遷移到指定的目錄,本文將其遷移到D:\Ubuntu目錄下。
Ubuntu子系統(tǒng)安裝成功后,進行遷移操作,操作如下:
1.需要下載LxRunOffline,下載地址,下載文件LxRunOffline-v3.5.0-mingw.zip,然后解壓到某個目錄中
2.設置環(huán)境變量,在系統(tǒng)變量Path中添加LxRunOffline解壓的目錄(.exe所在的目錄)
3.重啟電腦,使環(huán)境變量生效
4.Win + R運行cmd,輸入LxRunOffline,如果顯示下面的提示證明已經安裝成功了
5.Win + R運行cmd,輸入LxRunOffline list查看子系統(tǒng)版本
6.復制上面的版本號,然后輸入LxRunOffline move -n {version} -d {dir},{version}是版本號,{dir}是遷移目的目錄,比如本文是20版本,遷移到D盤Ubuntu目錄下,LxRunOffline move -n Ubuntu-20.04 -d D:\Ubuntu,然后回車,等待遷移完成,10分鐘左右。
這樣,整個Ubuntu子系統(tǒng)就遷移到了指定目錄下了。
openharmony 運行代碼,獲取OpenHarmony源碼
Ubuntu環(huán)境下:
1.Linux開發(fā)環(huán)境準備
參考 安裝Linux編譯環(huán)境 https://device.harmonyos.com/cn/docs/start/introduce/oem_minitinier_environment_lin-0000001105407498
2.python環(huán)境
Ubuntu20已自帶python3.8.5,執(zhí)行sudo update-alternatives --install /usr/bin/python python /usr/bin/python3 150切換python3:
安裝pip3
$ sudo apt-get -y update
$ sudo apt-get install python3-pip
其他所需庫參考開源文檔使用pip3安裝即可?;蛘咧苯右来螆?zhí)行下面命令:
$ sudo pip3 install kconfiglib
$ sudo pip3 install pycryptodome
$ sudo pip3 install six --upgrade --ignore-installed six
$ sudo pip3 install ecdsa
安裝gn,ninja,LLVM參考開源文檔傻瓜安裝即可;
源碼獲取
1.碼云gitee賬號注冊,SSH公鑰注冊,git客戶端配置參考開源文檔介紹配置即可,https://device.harmonyos.com/cn/docs/start/get-code/oem_sourcecode_guide-0000001050769927
2.安裝碼云repo工具:
$ su root -----------身份驗證失敗,執(zhí)行 sudo passwd,設置root密碼即可。
$ sudo passwd
$ su root
# curl https://gitee.com/oschina/repo/raw/fork_flow/repo-py3 > /usr/local/bin/repo
# chmod a+x /usr/local/bin/repo
# pip3 install -i https://pypi.tuna.tsinghua.edu.cn/simple reques
獲取OpenHarmony主干代碼
repo init -u https://gitee.com/openharmony/manifest.git -b ssh/master --no-repo-verify
repo sync -c -j16
repo forall -c 'git lfs pull'
如圖:
獲取OpenHarmony release分支代碼
repo init -u https://gitee.com/openharmony/manifest.git -b OpenHarmony_1.0.1_release --no-repo-verify
repo sync -c -j16
repo forall -c 'git lfs pull'
如圖:
編譯
1.安裝hb
$ python3 -m pip install --user build/lite
$ vim ~/.bashrc
填加:export PATH=~/.local/bin:$PATH
source ~/.bashrc
編譯:
以Hi3516DV300板子為例:
1.Hi3516環(huán)境搭建:編譯依賴基礎軟件、文件打包工具、hc-gen、Java 虛擬機環(huán)境安裝 點擊參考開源文檔Hi3516環(huán)境搭建 流式安裝即可
2.編譯版本
repo sync 更新代碼
hb set
回車
選擇ipcamera_hispark_taurus@hisilicon
hb build
等待編譯完成
編譯完成所在路徑:D:\Ubuntu\rootfs\home\alex\openharmony_master\out\hispark_taurus\ipcamera_hispark_taurus\
版本燒寫所需文件:OHOS_Image.bin,rootfs_vfat.img,userfs_vfat.img
燒寫
openharmony 運行代碼,使用Hitool工具燒寫:
1.登錄Hihope官網(wǎng)下載Hi3516-HiTool安裝包解壓到本地
Windows環(huán)境雙擊HiTool.exe即可打開;
2.點擊鏈接下載USB-to-Serial Comm Port驅動程序
點擊安裝包,安裝驅動程序。
驅動安裝完成后,將Hi3516開源板子連接到PC上,重新插拔USB接口,串口信息顯示如下圖所示(如果初次查看設備管理沒有端口,請安裝CH341SER.EXE驅動)。
3.連接網(wǎng)線,進行小網(wǎng)Ip設置
4.燒寫
打開hitool燒寫工具,按照如下配置燒寫:
下電上電等待燒寫成功:
PS:板子第一次燒寫需要燒寫fastboot,uboot文件(Hi3516DV300為例)可從device/hisilicon/hispark_taurus/sdk_liteos/uboot/out/boot獲取:
參數(shù):開始地址 0 長度 1M
其他板子的uboot文件所在路徑同樣路徑獲取即可:
如圖,燒寫成功,板子正常啟動:
NFS掛載
說明:hanewin官網(wǎng)下載的最新版本的nfs1.2.59,安裝使用時會存在Unable to open file ×××.xml的情況,可自行下載安裝其他舊的nfs版本,自測hanewin_nfs_server_V1.1.69和hanewin_nfs_server_1.2.19都可以,同樣流程安裝即可正常使用,安裝包也可從附件中獲取。
1.控制面板——系統(tǒng)和安全——Windows Defender防火墻——高級設置——入站規(guī)則——新建規(guī)則(勾選端口next——TCP——特定本地端口,添加111,1058,2049 next——允許連接next——勾選域、專用、共用 next)——為該規(guī)則定義一個名字haneWinTcp——完成。
2.hanewin官網(wǎng)下載最新版本的nfs server安裝包
3.雙擊.exe安裝;
4.安裝成功后,到安裝所在路徑下,以管理員方式運行NFS Server:
5.配置
6.設置保存后,重啟NFS服務
7.掛載
使用Xshell或其他工具,連接3516的板子:
掛載:
創(chuàng)建掛載目錄:/test_root/kernel
完成掛載:mount 192.168.1.3:/mnt /test_root/kernel nfs
windows本地代碼編輯
1.下載安裝代碼編輯工具Visual Studio Code,點擊下載;
2.安裝一些常用插件;
3.直接從本地Ubuntu目錄打開打開代碼文件編輯即可;
編輯后,編譯,以某個測試套用例為例:
將編譯好的可執(zhí)行文件放到掛載目錄下:
執(zhí)行
代碼上庫
1.登錄碼云fork代碼xts_acts倉
2.簽署“貢獻者許可協(xié)議”(CLA)
3.創(chuàng)建本地分支:repo start branch_name --all
4.查看修改:git status
5.git add .
6.git commit -sm "xxxxxx" //xxxxx為提交信息描述
ps:
參考:https://gitee.com/openharmony/docs/blob/master/zh-cn/contribute/%E8%B4%A1%E7%8C%AE%E6%B5%81%E7%A8%8B.md
7.git push https://gitee.com/碼云用戶名/xts_acts upup:refs/heads/kernel_lite_20210402_3
其中,碼云用戶名是自己注冊碼云的名稱,xts_acts是fork的代碼倉,upup是Ubuntu本地repo建的分支,kernel_lite__20210405是分支標簽,自己隨便建,不創(chuàng)建默認是maser分支(這是給碼云遠端個人倉本次提交所創(chuàng)建的分支)。
說明:第一次push,需要輸入username和password,用戶名輸入碼云用戶名,密碼是碼云登錄密碼;輸入后回車,重新執(zhí)行git push操作即可。
8.新建Pull Request將遠端個人倉庫同步到主干倉:
注意:這兒是從遠端fork的個人倉中同步(下圖左邊源分支這兒是個人碼云用戶名,而不是OpenHarmony),不知道的按如下操作:個人賬戶中點擊個人主頁——選擇xts_acts——Pull Request——新建Pull Request——選擇源分支同步到目標分支;
評論輸入start build,代碼開始構建:自動觸發(fā)編譯和測試以及靜態(tài)檢查,全部通過后,會有審核人員審核合入;
如圖已成功合入的:
至此,代碼已成功上庫合入,如果有編譯或測試或靜態(tài)檢查失敗,以同樣流程修改后重新上庫。
提交失敗項解決
1.靜態(tài)檢查失?。?/p>
失敗項查看:
按照失敗項本地修改后重新提交
2.編譯測試項失?。?/p>
編譯失敗較少,一般提交前本地最好編譯測試通過,編譯失敗查看,點擊后面的report會自動下載編譯內容;
測試失敗查看:
3.解決后重新提交:
git add .
git commit --amend
git push https://gitee.com/碼云用戶名/xts_acts upup:refs/heads/kernel_lite_20210402_3 --force
說明:
修改后,追加提交,只需要git push時在前面git push 信息的后面加上 --force,這樣修改追加提交的內容就會自動同步到前面創(chuàng)建的pr里,不需要重新在創(chuàng)建新的PR,然后評論輸入start build,開始構建即可。
遠端個人倉分支管理:
4.特殊情況:
靜態(tài)檢查無法修改的,比如誤報,測試對象本身問題等,在評論去說明情況即可,審核人會審核合入;
碼云工具問題導致失敗的情況,聯(lián)系工具的人解決恢復后,評論輸入start build 重新觸發(fā)構建即可。
附件
提供了一些用到的軟件安裝包,可直接下載使用:
點擊下載
————————————————
版權聲明:本文為CSDN博主「@_南先森」的原創(chuàng)文章,遵循CC 4.0 BY-SA版權協(xié)議,轉載請附上原文出處鏈接及本聲明。
原文鏈接:https://blog.csdn.net/nanzhanfei/article/details/115409538
-
OpenHarmony
+關注
關注
25文章
3727瀏覽量
16380
發(fā)布評論請先 登錄
相關推薦
評論