RM新时代网站-首页

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

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

3天內(nèi)不再提示

使用WSL2編譯OpenHarmony DAYU200鏡像效率翻倍

電子發(fā)燒友開源社區(qū) ? 來源:未知 ? 2022-10-21 13:59 ? 次閱讀

筆者發(fā)現(xiàn)使用wsl(Windows Subsystem for Linux,適用于 Linux 的 Windows 子系統(tǒng))編譯openharmony鏡像比傳統(tǒng)虛擬機快3倍以上。編譯環(huán)境換成wsl后,編譯ohos只需要傳統(tǒng)虛擬機上三分之一的時間。下面分享使用經(jīng)驗如下:

為什么使用WSL2比傳統(tǒng)虛擬機編譯OpenHarmony快?

以下是微軟官方給的解釋:https://learn.microsoft.com/zh-cn/windows/wsl/about

  • Windows Subsystem for Linux(適用于 Linux 的 Windows 子系統(tǒng))可讓開發(fā)人員按原樣運行 GNU/Linux 環(huán)境 - 包括大多數(shù)命令行工具、實用工具和應(yīng)用程序 - 且不會產(chǎn)生傳統(tǒng)虛擬機或雙啟動設(shè)置開銷。

  • WSL2使用最新、最強大的虛擬化技術(shù)在輕量級實用工具虛擬機 (VM) 中運行 Linux 內(nèi)核。但是,WSL2不是傳統(tǒng)的 VM 體驗。

  • 傳統(tǒng)的 VM 體驗可能啟動速度慢,是獨立的,消耗大量資源,需要你花費時間進行管理。WSL 2 沒有這些屬性。

以下是筆者的感受:

具體點說就是編譯openharmony時cpu的利用率可以達到90%以上。而且編譯直接占用的是電腦的內(nèi)存,而不是給傳統(tǒng)虛擬機上分配的內(nèi)存。

e718c656-5017-11ed-a3b6-dac502259ad0.png

e738d50e-5017-11ed-a3b6-dac502259ad0.png

而傳統(tǒng)虛擬機還要設(shè)置虛擬機參數(shù),性能是受到制約的。

e753b450-5017-11ed-a3b6-dac502259ad0.png

配置WSL環(huán)境

檢查運行 WSL 2 的要求

若要更新到 WSL 2,需要運行 Windows 10。

  • 對于 x64 系統(tǒng):版本 1903 或更高版本,內(nèi)部版本為 18362 或更高版本。

  • 對于 ARM64 系統(tǒng):版本 2004 或更高版本,內(nèi)部版本為 19041 或更高版本。
    或 Windows 11。

若要檢查 Windows 版本及內(nèi)部版本號,選擇 Windows 徽標鍵 + R,然后鍵入“winver”,選擇“確定”。

安裝 WSL 命令

現(xiàn)在,可以在管理員 PowerShell 或 Windows 命令提示符中輸入此命令,然后重啟計算機來安裝運行適用于 Linux 的 Windows 子系統(tǒng) (WSL) 所需的全部內(nèi)容。

wsl --install

(左右移動查看全部內(nèi)容)

啟用適用于 Linux 的 Windows 子系統(tǒng)

需要先啟用“適用于 Linux 的 Windows 子系統(tǒng)”可選功能,然后才能在 Windows 上安裝 Linux 分發(fā)。

以管理員身份打開 PowerShell(“開始”菜單 >“PowerShell” >單擊右鍵 >“以管理員身份運行”),然后輸入以下命令:

dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart

(左右移動查看全部內(nèi)容)

啟用虛擬機功能

安裝 WSL 2 之前,必須啟用“虛擬機平臺”可選功能。計算機需要虛擬化功能才能使用此功能。

以管理員身份打開 PowerShell 并運行:

dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart

(左右移動查看全部內(nèi)容)

按要求重啟使設(shè)置生效。

下載 Linux 內(nèi)核更新包

1.下載最新包:

適用于 x64 計算機的 WSL2 Linux 內(nèi)核更新包

2.運行上一步中下載的更新包。(雙擊以運行 - 系統(tǒng)將提示你提供提升的權(quán)限,選擇“是”以批準此安裝。)

將 WSL 2 設(shè)置為默認版本

使用 wsl --install 命令安裝的新 Linux 安裝將默認設(shè)置為 WSL 2。

wsl --set-default-version 2

(左右移動查看全部內(nèi)容)

安裝所選的 Linux 分發(fā)

打開 Microsoft Store,并選擇你偏好的 Linux 分發(fā)版。

編譯openharmony只能安裝Ubuntu 20.04和Ubuntu 18.04

e7798a90-5017-11ed-a3b6-dac502259ad0.png

e7addba6-5017-11ed-a3b6-dac502259ad0.png

首次啟動新安裝的 Linux 分發(fā)版時,將打開一個控制臺窗口,系統(tǒng)會要求你等待一分鐘或兩分鐘,以便文件解壓縮并存儲到電腦上。未來的所有啟動時間應(yīng)不到一秒。

然后,需要為新的 Linux 分發(fā)版創(chuàng)建用戶帳戶。

e7c629ae-5017-11ed-a3b6-dac502259ad0.png

wsl2到底安裝在windows系統(tǒng)的那個位置呢?
C:Users用戶名AppDataLocalPackagesCanonicalGroupLimited.Ubuntu18.04LTS_79rhkp1fndgscLocalState

切換源

在Linux終端輸入命令

sudo vim /etc/apt/sources.list

(左右移動查看全部內(nèi)容)

e7e47e40-5017-11ed-a3b6-dac502259ad0.png

把etc/apt/sources.list文件內(nèi)容清楚,換下述其中一個源。(以下是vim的使用)

  • 按一下字母「i」就可以進入「插入模式(Insert mode)」,就可以開始輸入文字了。

  • 編輯好后按ESC鍵退出。

  • 最后鍵盤輸入:wq,然后文件存盤并退出vim。

#163
deb http://mirrors.163.com/ubuntu/ bionic main restricted universe multiverse
deb http://mirrors.163.com/ubuntu/ bionic-security main restricted universe multiverse
deb http://mirrors.163.com/ubuntu/ bionic-updates main restricted universe multiverse
deb http://mirrors.163.com/ubuntu/ bionic-proposed main restricted universe multiverse
deb http://mirrors.163.com/ubuntu/ bionic-backports main restricted universe multiverse
deb-src http://mirrors.163.com/ubuntu/ bionic main restricted universe multiverse
deb-src http://mirrors.163.com/ubuntu/ bionic-security main restricted universe multiverse
deb-src http://mirrors.163.com/ubuntu/ bionic-updates main restricted universe multiverse
deb-src http://mirrors.163.com/ubuntu/ bionic-proposed main restricted universe multiverse
deb-src http://mirrors.163.com/ubuntu/ bionic-backports main restricted universe multiverse
#中科大源
deb https://mirrors.ustc.edu.cn/ubuntu/ bionic main restricted universe multiverse
deb https://mirrors.ustc.edu.cn/ubuntu/ bionic-updates main restricted universe multiverse
deb https://mirrors.ustc.edu.cn/ubuntu/ bionic-backports main restricted universe multiverse
deb https://mirrors.ustc.edu.cn/ubuntu/ bionic-security main restricted universe multiverse
deb https://mirrors.ustc.edu.cn/ubuntu/ bionic-proposed main restricted universe multiverse
deb-src https://mirrors.ustc.edu.cn/ubuntu/ bionic main restricted universe multiverse
deb-src https://mirrors.ustc.edu.cn/ubuntu/ bionic-updates main restricted universe multiverse
deb-src https://mirrors.ustc.edu.cn/ubuntu/ bionic-backports main restricted universe multiverse
deb-src https://mirrors.ustc.edu.cn/ubuntu/ bionic-security main restricted universe multiverse
deb-src https://mirrors.ustc.edu.cn/ubuntu/ bionic-proposed main restricted universe multiverse
#阿里云源
deb http://mirrors.aliyun.com/ubuntu/ bionic main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ bionic-security main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ bionic-updates main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ bionic-proposed main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ bionic-backports main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ bionic main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ bionic-security main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ bionic-updates main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ bionic-proposed main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ bionic-backports main restricted universe multiverse
#清華源
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-updates main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-backports main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-security main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-proposed main restricted universe multiverse
deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic main restricted universe multiverse
deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-updates main restricted universe multiverse
deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-backports main restricted universe multiverse
deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-security main restricted universe multiverse
deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-proposed main restricted universe multiverse

(左右移動查看全部內(nèi)容)

筆者換的是清華源。

e80ab434-5017-11ed-a3b6-dac502259ad0.png

最后更新源

sudo apt update
sudo apt upgrade

(左右移動查看全部內(nèi)容)

在windowsx下的vscode里面下載好remote - wsl拓展

還可以通過使用 VS Code 中的快捷方式 CTRL+SHIFT+P 調(diào)出命令面板,以訪問更多 VS Code 遠程選項。

e83fcda4-5017-11ed-a3b6-dac502259ad0.png

e8603fc6-5017-11ed-a3b6-dac502259ad0.png

使用WSL1編譯OpenHarmony可以嗎?

編譯不了,筆者已經(jīng)踩過坑了。

比較 WSL 1 和 WSL 2:

e869160a-5017-11ed-a3b6-dac502259ad0.png

使用wsl2編譯openharmony鏡像

源碼獲取和編譯工具安裝的部分不多作介紹了,社區(qū)有很多優(yōu)秀的參考文章值得參考。

e87b9c6c-5017-11ed-a3b6-dac502259ad0.gif

e944a1b6-5017-11ed-a3b6-dac502259ad0.png

提示:本文由電子發(fā)燒友社區(qū)發(fā)布,轉(zhuǎn)載請注明以上來源。如需社區(qū)合作及入群交流,請?zhí)砑游⑿臙EFans0806,或者發(fā)郵箱liuyong@huaqiu.com。

更多熱點文章閱讀

END

想了解更多開源技術(shù)?后臺留言,立刻安排!

就喜歡獎勵一個“”和“在看”唄~


原文標題:使用WSL2編譯OpenHarmony DAYU200鏡像效率翻倍

文章出處:【微信公眾號:電子發(fā)燒友開源社區(qū)】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。


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

    關(guān)注

    25

    文章

    3713

    瀏覽量

    16254

原文標題:使用WSL2編譯OpenHarmony DAYU200鏡像效率翻倍

文章出處:【微信號:HarmonyOS_Community,微信公眾號:電子發(fā)燒友開源社區(qū)】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏

    評論

    相關(guān)推薦

    用SecureCRT連接串口卻沒有登錄Ubuntu界面

    用SecureCRT連接串口成功后界面只顯示光標沒有Ubuntu的登陸界面顯示。我用的是WSL2和Ubuntu 18.04,想連接調(diào)試串口,上位機使用CRT登錄(115200-8-N-1)。板子為
    發(fā)表于 11-06 21:16

    【米爾-瑞米派 Remi Pi 創(chuàng)意秀】 01 - 開發(fā)環(huán)境搭建

    工欲善其事必先利其器,首先是對開發(fā)環(huán)境的準備,分為PC端和板端。 PC端 PC是用來交叉編譯開發(fā)程序以及開發(fā)內(nèi)核編譯鏡像等使用的,這里我使用的wsl2-ubuntu22.04來做一個開
    發(fā)表于 09-27 21:29

    【龍芯2K0300蜂鳥板試用】OpenHarmony代碼

    收到龍芯2K0300蜂鳥開發(fā)板后,對開發(fā)板做了一些了解和研究,現(xiàn)將OpenHarmony代碼提供給大家測試,也希望大家能更多的認識龍芯2K0300蜂鳥開發(fā)板,下面先簡單介紹一下這塊開發(fā)板。 廣東
    發(fā)表于 09-18 11:42

    [2K300適配OpenharmonyV4.1]根文件系統(tǒng)制作請教

    官方你好,我這邊需要適配OpenharmonyV4.1,但是目前網(wǎng)上找不到2K300的開源資料,我嘗試使用2K500開源資料搭建開發(fā)環(huán)境,目前已成功編譯出對應(yīng)
    發(fā)表于 09-11 11:18

    潤開鴻“龍芯+OpenHarmony”開發(fā)平臺DAYU431先鋒派新品發(fā)布

    潤開鴻基于全新龍芯2K0300芯片平臺的重磅新品潤開鴻HH-SCDAYU431先鋒派開發(fā)平臺正式上市,成為潤開鴻DAYU系列產(chǎn)品中符合OpenHarmony生態(tài)兼容性標準的第三款龍芯芯片平臺產(chǎn)品
    的頭像 發(fā)表于 08-07 14:50 ?513次閱讀
    潤開鴻“龍芯+<b class='flag-5'>OpenHarmony</b>”開發(fā)平臺<b class='flag-5'>DAYU</b>431先鋒派新品發(fā)布

    OpenHarmony之開機優(yōu)化

    一丶環(huán)境信息 源碼版本:OpenHarmony-4.1-Release 板子型號:dayu200(RK3568) 二丶Bootchart工具 在開機優(yōu)化時,我們需要借助Bootchart工具,當(dāng)前
    發(fā)表于 07-01 16:39

    wsl2中安裝的idf,在monitor時會報錯的原因?

    wsl2中安裝的idf,使用vscode 擴展,功能一切正常,但是在 monitor 時會報下列錯誤 xtensa-esp32-elf-addr2line -pfiaC -e build
    發(fā)表于 06-17 07:30

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

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

    鴻蒙OpenHarmony開發(fā):【編譯構(gòu)建指導(dǎo)】

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

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

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

    【鴻蒙】OpenHarmony運行docker詳細步驟

    2.準備支持 Docker 容器的 OpenHarmony 內(nèi)核 1.檢測 DAYU200 3568 OpenHarmony3.2release 內(nèi)核對 docker 的支持 下載檢
    的頭像 發(fā)表于 03-02 15:10 ?2606次閱讀
    【鴻蒙】<b class='flag-5'>OpenHarmony</b>運行docker詳細步驟

    OpenHarmony鴻蒙應(yīng)用如何使用滾動類組件

    型號:DAYU200(RK3568) 系統(tǒng)版本:OpenHarmony 4.1.5.5 演示 demo: 演示 demo 分為兩部分: WaterFlow 控制、WaterFlow 屬性,WaterFlow 控制可設(shè)置瀑布流容器滾動相關(guān)參數(shù),WaterFlow 屬性可以設(shè)
    的頭像 發(fā)表于 02-24 18:48 ?1286次閱讀
    <b class='flag-5'>OpenHarmony</b>鴻蒙應(yīng)用如何使用滾動類組件

    請問DAYU200有SPI可以用么

    大家好,請問DAYU200有SPI可以用么 我看這里https://developer.huawei.com/consumer/cn/market/prod-detail?productId
    發(fā)表于 02-20 11:38

    DAYU200的版子刷4.0的Release版本,屏幕觸摸不起作用,要怎么處理呀?

    自已從 OpenHarmony 官網(wǎng)下載的源碼 3.2 Release 版本編譯 燒錄進去,功能都正常,4.0 Release 版本燒進去后,能開機,能進入系統(tǒng),查觸摸屏點擊不了。要怎么處理呀?
    發(fā)表于 01-23 18:54
    RM新时代网站-首页