0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看威廉希尔官方网站 视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

使用WSL2编译OpenHarmony DAYU200镜像效率翻倍

电子发烧友开源社区 来源:未知 2022-10-21 13:59 次阅读

笔者发现使用wsl(Windows Subsystem for Linux,适用于 Linux 的 Windows 子系统)编译openharmony镜像比传统虚拟机快3倍以上。编译环境换成wsl后,编译ohos只需要传统虚拟机上三分之一的时间。下面分享使用经验如下:

为什么使用WSL2比传统虚拟机编译OpenHarmony快?

以下是微软官方给的解释:https://learn.microsoft.com/zh-cn/windows/wsl/about

  • Windows Subsystem for Linux(适用于 Linux 的 Windows 子系统)可让开发人员按原样运行 GNU/Linux 环境 - 包括大多数命令行工具、实用工具和应用程序 - 且不会产生传统虚拟机或双启动设置开销。

  • WSL2使用最新、最强大的虚拟化威廉希尔官方网站 在轻量级实用工具虚拟机 (VM) 中运行 Linux 内核。但是,WSL2不是传统的 VM 体验。

  • 传统的 VM 体验可能启动速度慢,是独立的,消耗大量资源,需要你花费时间进行管理。WSL 2 没有这些属性。

以下是笔者的感受:

具体点说就是编译openharmony时cpu的利用率可以达到90%以上。而且编译直接占用的是电脑的内存,而不是给传统虚拟机上分配的内存。

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

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

而传统虚拟机还要设置虚拟机参数,性能是受到制约的。

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

配置WSL环境

检查运行 WSL 2 的要求

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

  • 对于 x64 系统:版本 1903 或更高版本,内部版本为 18362 或更高版本。

  • 对于 ARM64 系统:版本 2004 或更高版本,内部版本为 19041 或更高版本。
    或 Windows 11。

若要检查 Windows 版本及内部版本号,选择 Windows 徽标键 + R,然后键入“winver”,选择“确定”。

安装 WSL 命令

现在,可以在管理员 PowerShell 或 Windows 命令提示符中输入此命令,然后重启计算机来安装运行适用于 Linux 的 Windows 子系统 (WSL) 所需的全部内容。

wsl --install

(左右移动查看全部内容)

启用适用于 Linux 的 Windows 子系统

需要先启用“适用于 Linux 的 Windows 子系统”可选功能,然后才能在 Windows 上安装 Linux 分发。

以管理员身份打开 PowerShell(“开始”菜单 >“PowerShell” >单击右键 >“以管理员身份运行”),然后输入以下命令:

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

(左右移动查看全部内容)

启用虚拟机功能

安装 WSL 2 之前,必须启用“虚拟机平台”可选功能。计算机需要虚拟化功能才能使用此功能。

以管理员身份打开 PowerShell 并运行:

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

(左右移动查看全部内容)

按要求重启使设置生效。

下载 Linux 内核更新包

1.下载最新包:

适用于 x64 计算机的 WSL2 Linux 内核更新包

2.运行上一步中下载的更新包。(双击以运行 - 系统将提示你提供提升的权限,选择“是”以批准此安装。)

将 WSL 2 设置为默认版本

使用 wsl --install 命令安装的新 Linux 安装将默认设置为 WSL 2。

wsl --set-default-version 2

(左右移动查看全部内容)

安装所选的 Linux 分发

打开 Microsoft Store,并选择你偏好的 Linux 分发版。

编译openharmony只能安装Ubuntu 20.04和Ubuntu 18.04

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

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

首次启动新安装的 Linux 分发版时,将打开一个控制台窗口,系统会要求你等待一分钟或两分钟,以便文件解压缩并存储到电脑上。未来的所有启动时间应不到一秒。

然后,需要为新的 Linux 分发版创建用户帐户。

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

wsl2到底安装在windows系统的那个位置呢?
C:Users用户名AppDataLocalPackagesCanonicalGroupLimited.Ubuntu18.04LTS_79rhkp1fndgscLocalState

切换源

在Linux终端输入命令

sudo vim /etc/apt/sources.list

(左右移动查看全部内容)

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

把etc/apt/sources.list文件内容清楚,换下述其中一个源。(以下是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

(左右移动查看全部内容)

笔者换的是清华源。

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

最后更新源

sudo apt update
sudo apt upgrade

(左右移动查看全部内容)

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

还可以通过使用 VS Code 中的快捷方式 CTRL+SHIFT+P 调出命令面板,以访问更多 VS Code 远程选项。

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

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

使用WSL1编译OpenHarmony可以吗?

编译不了,笔者已经踩过坑了。

比较 WSL 1 和 WSL 2:

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

使用wsl2编译openharmony镜像

源码获取和编译工具安装的部分不多作介绍了,社区有很多优秀的参考文章值得参考。

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

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

提示:本文由电子发烧友社区发布,转载请注明以上来源。如需社区合作及入群交流,请添加微信EEFans0806,或者发邮箱liuyong@huaqiu.com。

更多热点文章阅读

END

想了解更多开源威廉希尔官方网站 ?后台留言,立刻安排!

就喜欢奖励一个“”和“在看”呗~


原文标题:使用WSL2编译OpenHarmony DAYU200镜像效率翻倍

文章出处:【微信公众号:电子发烧友开源社区】欢迎添加关注!文章转载请注明出处。


声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • OpenHarmony
    +关注

    关注

    25

    文章

    3727

    浏览量

    16379

原文标题:使用WSL2编译OpenHarmony DAYU200镜像效率翻倍

文章出处:【微信号:HarmonyOS_Community,微信公众号:电子发烧友开源社区】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    OpenHarmony通过挂载镜像来修改镜像内容,RK3566鸿蒙开发板演示

    OpenHarmony通过挂载镜像来修改镜像内容的教程,提高修改镜像内容效率
    的头像 发表于 01-03 14:21 112次阅读
    <b class='flag-5'>OpenHarmony</b>通过挂载<b class='flag-5'>镜像</b>来修改<b class='flag-5'>镜像</b>内容,RK3566鸿蒙开发板演示

    OpenHarmony源码编译后烧录镜像教程,RK3566鸿蒙开发板演示

    本文介绍瑞芯微主板/开发板编译OpenHarmony源码后烧录镜像的教程,触觉智能Purple Pi OH鸿蒙开发板演示。搭载了瑞芯微RK3566四核处理器,树莓派卡片电脑设计,支持开源鸿蒙O
    的头像 发表于 12-30 10:08 94次阅读
    <b class='flag-5'>OpenHarmony</b>源码<b class='flag-5'>编译</b>后烧录<b class='flag-5'>镜像</b>教程,RK3566鸿蒙开发板演示

    dayu200 rk3568 openharmony5.0 sim卡 通话服务

    想请问一下有人在dayu200 rk3568上插过sim卡并且成功完成过通话服务吗? 我现在在dayu200上烧录了openHarmony release 5.0.0版本的镜像,在上面
    发表于 12-26 16:52

    用SecureCRT连接串口却没有登录Ubuntu界面

    用SecureCRT连接串口成功后界面只显示光标没有Ubuntu的登陆界面显示。我用的是WSL2和Ubuntu 18.04,想连接调试串口,上位机使用CRT登录(115200-8-N-1)。板子为
    发表于 11-06 21:16

    【米尔-瑞米派 Remi Pi 创意秀】 01 - 开发环境搭建

    工欲善其事必先利其器,首先是对开发环境的准备,分为PC端和板端。 PC端 PC是用来交叉编译开发程序以及开发内核编译镜像等使用的,这里我使用的wsl2-ubuntu22.04来做一个开
    发表于 09-27 21:29

    【龙芯2K0300蜂鸟板试用】OpenHarmony代码

    收到龙芯2K0300蜂鸟开发板后,对开发板做了一些了解和研究,现将OpenHarmony代码提供给大家测试,也希望大家能更多的认识龙芯2K0300蜂鸟开发板,下面先简单介绍一下这块开发板。 广东
    发表于 09-18 11:42

    [2K300适配OpenharmonyV4.1]根文件系统制作请教

    官方你好,我这边需要适配OpenharmonyV4.1,但是目前网上找不到2K300的开源资料,我尝试使用2K500开源资料搭建开发环境,目前已成功编译出对应
    发表于 09-11 11:18

    润开鸿“龙芯+OpenHarmony”开发平台DAYU431先锋派新品发布

    润开鸿基于全新龙芯2K0300芯片平台的重磅新品润开鸿HH-SCDAYU431先锋派开发平台正式上市,成为润开鸿DAYU系列产品中符合OpenHarmony生态兼容性标准的第三款龙芯芯片平台产品
    的头像 发表于 08-07 14:50 531次阅读
    润开鸿“龙芯+<b class='flag-5'>OpenHarmony</b>”开发平台<b class='flag-5'>DAYU</b>431先锋派新品发布

    OpenHarmony之开机优化

    一丶环境信息 源码版本:OpenHarmony-4.1-Release 板子型号:dayu200(RK3568) 二丶Bootchart工具 在开机优化时,我们需要借助Bootchart工具,当前
    发表于 07-01 16:39

    wsl2中安装的idf,在monitor时会报错的原因?

    wsl2中安装的idf,使用vscode 扩展,功能一切正常,但是在 monitor 时会报下列错误 xtensa-esp32-elf-addr2line -pfiaC -e build
    发表于 06-17 07:30

    鸿蒙OpenHarmony【标准系统 编译】(基于RK3568开发板)

    OpenHarmony支持hb和build.sh两种编译方式。此处介绍hb方式,build.sh脚本编译方式请参考[使用build.sh脚本编译源码]。
    的头像 发表于 05-08 17:37 1200次阅读
    鸿蒙<b class='flag-5'>OpenHarmony</b>【标准系统 <b class='flag-5'>编译</b>】(基于RK3568开发板)

    【鸿蒙】OpenHarmony运行docker详细步骤

    2.准备支持 Docker 容器的 OpenHarmony 内核 1.检测 DAYU200 3568 OpenHarmony3.2release 内核对 docker 的支持 下载检
    的头像 发表于 03-02 15:10 2700次阅读
    【鸿蒙】<b class='flag-5'>OpenHarmony</b>运行docker详细步骤

    OpenHarmony鸿蒙应用如何使用滚动类组件

    型号:DAYU200(RK3568) 系统版本:OpenHarmony 4.1.5.5 演示 demo: 演示 demo 分为两部分: WaterFlow 控制、WaterFlow 属性,WaterFlow 控制可设置瀑布流容器滚动相关参数,WaterFlow 属性可以设
    的头像 发表于 02-24 18:48 1325次阅读
    <b class='flag-5'>OpenHarmony</b>鸿蒙应用如何使用滚动类组件

    请问DAYU200有SPI可以用么

    大家好,请问DAYU200有SPI可以用么 我看这里https://developer.huawei.com/consumer/cn/market/prod-detail?productId
    发表于 02-20 11:38

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

    自已从 OpenHarmony 官网下载的源码 3.2 Release 版本编译 烧录进去,功能都正常,4.0 Release 版本烧进去后,能开机,能进入系统,查触摸屏点击不了。要怎么处理呀?
    发表于 01-23 18:54