type
status
date
slug
summary
tags
category
icon
password
方法一:WSL2
环境搭建
开发基础环境由windows 工作台和Linux 编译服务器组成。windows 工作台可以通过samba 服务或ssh 方式访问Linux编译服务器。其中windows 工作台用来烧录和代码编辑,Linux 编译服务器用来编译OpenHarmony 代码。为了简化步骤,Linux 编译服务器安装Ubuntu20.04,请使用虚拟机软件或云服务准备好此操作系统。OpenHarmony 标准系统为开发者提供的Docker 环境已经将对应的编译工具链进行了封装,开发者可省略对应工具的安装。
我的本机配置:windows 11
Windows配置windows工作台+Linux编译服务器环境
(1)配置WSL2
- 安装WSL2及Ubuntu20.04
- 启动Ubuntu并更新系统,打开Ubuntu20.04终端。

(2)安装Docker Desktop 并集成到 WSL2
- 安装时勾选 Use WSL 2 based engine。
- 打开Docker Desktop,进入 Settings > Resources > WSL Integration。
- 启用对已安装的Ubuntu 20.04的集成(如
Ubuntu-20.04
)。
- 在Ubuntu终端中运行:
- 如果看到欢迎信息,说明Docker已成功集成到WSL2。

获取 OpenHarmony Docker 镜像并对源码进行编译
- 获取 OpenHarmony Docker 镜像

- 检查镜像列表中是否包含
openharmony-docker-standard:0.0.5
。

- 在 Ubuntu 终端中克隆代码仓库

- 运行Docker容器并挂载代码目录
- 安装 repo 工具
- 配置Git信息(容器内执行)

- 拉取OpenHarmony源码

- 在这一步上导入后一直卡住了……
- 后来发现源码太大了下不完了……
方法二:虚拟机
1 搭建Windows环境
在嵌入式开发中,很多开发者习惯于使用Windows进行代码的编辑,比如使用Windows的Visual Studio Code进行OpenHarmony代码的开发。但当前阶段,大部分的开发板源码还不支持在Windows环境下进行编译,如Hi3861、Hi3516系列开发板。因此,建议使用Ubuntu的编译环境对源码进行编译。
在以上的设备开发场景中,可以搭建一套Windows+Ubuntu混合开发的环境,其中使用Windows平台的DevEco Device Tool可视化界面进行相关操作,通过远程连接的方式对接Ubuntu下的DevEco Device Tool(可以不安装Visual Studio Code),然后对Ubuntu下的源码进行开发、编译、烧录等操作。
本章节介绍开发所需Windows环境的搭建方法。
系统要求
- Windows 10 64位系统,推荐内存8GB及以上,硬盘100GB及以上。
- 建议Windows和Ubuntu系统上安装的DevEco Device Tool为最新版本,且版本号需相同。
说明:下面以3.1 Release版本的IDE进行说明,不同版本的IDE在支持的特性和操作上略有差别,具体情况可参考该工具的使用指南。
操作步骤
- 下载DevEco Device Tool最新Windows版本软件包。
- 解压DevEco Device Tool压缩包,双击安装包程序,单击下一步进行安装。
- 请详细阅读以下界面的用户协议和隐私声明,需勾选“我接受许可证协议中的条款”后,才能继续下一步的安装。
- 设置DevEco Device Tool的安装路径,请注意安装路径不能包含中文字符,不建议安装到C盘目录,单击下一步。

- 根据安装向导提示,安装依赖的工具。
- 安装:按照默认路径及参数直接安装。
- 自定义安装:安装前可以自行修改安装路径及其他设置参数。

其中,
安装完成后,各软件状态显示为OK。

- 依赖的工具安装完成后,单击安装,开始安装DevEco Device Tool。
- 继续等待DevEco Device Tool安装向导自动安装DevEco Device Tool插件,直至安装完成,单击完成,关闭DevEco Device Tool安装向导。

- 打开Visual Studio Code,进入DevEco Device Tool工具界面。至此,DevEco Device Tool Windows开发环境安装完成。

2 搭建Ubuntu环境
本章节介绍开发所需Ubuntu环境的搭建方法。
说明: 如果没有Ubuntu系统,可在Windows系统中通过虚拟机方式搭建Ubuntu系统,具体请参考Ubuntu系统安装指导。Ubuntu系统安装完成后,请根据指导完成Ubuntu基础环境配置,然后再根据本章节进行DevEco Device Tool工具的安装。
- 选择虚拟机镜像地址以及安装地址,并自定义命名。(这里为了便于与Windows环境连接,我使用的是VM VirtualBox)

- 设置用户名和密码。

- 其余选择默认安装选项进行安装即可。
- 安装前,在设置里选择对应的虚拟机镜像文件,然后再启动虚拟机。

- 选择安装ubuntu。

- 接下来一路continue即可,最后设置账户密码,我设置的密码为123456。

- 等待虚拟机安装完成即可

- 输入密码并登录,然后一路continue即可。

- 修改密码并使用sudo apt-get update更新镜像源。

- 实现从Windows下拷贝文件和粘贴到Ubuntu下。
- 点击设备 —> 安装增强功能 —> run,输入密码进入即可。

- 等待安装。

- 安装一些必要的创建,安装完成后使用reboot指令重启ubuntu。
- 在设备中设置拖放和共享粘贴板的双向,即可实现双向粘贴等功能。
(3)搭建DevEco Device Tool的开发环境
- 安装DevEco Device Tool(Windows版本)
- 将DevEco Device Tool(Linux版本)安装包拖拽到虚拟机中

- 直接enter即可。

设置Ubuntu的IP
- 在ubuntu中安装openssh服务
sudo apt-get install openssh-server

- 启动ssh服务:
sudo systemctl start ssh
- 安装插件以查看ubuntu的ip地址:
sudo apt-get install net-tools
- 查看到ip为10.0.2.15,该ip为VirtualBox的默认ip

- 考虑到我们的开发环境可能会有限制,在Windows下可能无法访问该ip,因此我们可以通过设置网络模式为仅主机模式。
- 关闭虚拟机,在网络中启用网卡2,并选择连接方式为仅主机。

- 启动完成后再次输入ifconfig来查看ip。
- 如果进行双网卡设置之后无法启动虚拟机可能是VirtualBox没有正确识别 Host-Only 网卡,导致 Ubuntu 在启动时卡住。
解决方法:
- 检查 VirtualBox Host-Only 网卡是否正确安装
- 在 Windows 运行(Win + R) 输入:
ncpa.cpl
- 查看是否有 VirtualBox Host-Only Network
- 如果没有,需要重新创建:
- 打开 VirtualBox 管理(File) → 主机网络管理器(Host Network Manager)
- 创建一个新的 Host-Only 网卡
- 记住网卡名称(如
VirtualBox Host-Only Ethernet Adapter
)
- 在 VirtualBox 中正确选择该 Host-Only 网卡
- 在 网络 适配器 2 里,确保选择的是 VirtualBox Host-Only Ethernet Adapter
- 同时需要启动DHCP。
- 配置静态ip
- 在 Ubuntu 里运行
sudo ip addr add 192.168.210.1/24 dev enp0s8
- 然后检查ip:
ip a
,若显示上述ip则说明配置成功。 - 打开 CMD,运行:
ping 192.168.210.1
,若ping通则Windows可以访问ubuntu。
- 配置永久ip
- 编辑
netplan
配置文件:sudo nano /etc/netplan/01-netcfg.yaml
- 修改或添加如下内容(Ctrl+X退出):
- 保存文件后,执行:
sudo netplan apply
- 然后检查 IP:
ip a show enp0s8
配置SSH远程访问环境
- 在VScode中安装remote-ssh插件。

- 进入VScode,打开远程资源管理器 —> SSH —> + 中,输入“ssh username@ip_address”,其中ip_address为要连接的远程计算机的IP地址,username为登录远程计算机的帐号。

- SSH configuration文件,选择默认的第一选项即可。

- 选择连接打开远程计算机,这时需要选择操作系统,选择Linux即可。

- 选择连接出现以下报错。

- 检查
sudo nano /etc/ssh/sshd_config
,设置取消注释。
- 并重启SSH服务:
sudo systemctl restart ssh
。

- 经检查发现是因为静态ip设置冲突了。
IP地址冲突:
- 主机适配器IP 和 虚拟机 enp0s8 的IP 都设置为
192.168.210.1
,这会导致网络冲突。
- 同一子网内,主机和虚拟机必须使用不同的 IP 地址。
修改虚拟机 enp0s8 的静态 IP
- 编辑 Netplan 配置文件:
sudo nano /etc/netplan/01-netcfg.yaml
- 调整
enp0s8
的 IP 地址为同一子网下的其他地址(如192.168.210.100
):
- 应用配置:
sudo netplan apply
- 重新使用SSH连接即可正常连接。

3 创建工程并获取源码
- 打开DevEco Device Tool,进入Home页,点击New Project创建新工程。
- 在新工程的配置向导页,配置工程相关信息,包括:
- OpenHarmony Source Code:选择需要下载的OpenHarmony源码,请选择OpenHarmony Stable Version下的源码版本,支持OpenHarmony-v3.0.3-LTS、OpenHarmony-v3.1-Release、OpenHarmony-v3.2-Beta3、OpenHarmony-v3.2-Beta4、OpenHarmony-v3.2-Beta5、OpenHarmony-v3.2-Release版本。
- Project Name:设置工程名称。
- Project Path:选择工程文件存储路径。
- SOC:选择支持的芯片。
- Board:选择支持的开发板。
- Product:选择产品。
4 使用DevEco Device Tool拉取源码前的准备
1)repo+https源码的拉取。
- 下载repo
- 复制https://gitee.com/oschina/repo/raw/fork_flow/repo-py3这个网址的脚本文件

- 使用vim(如果刚刚的repo为空才需要进行这一步)
- 将文件拷贝到指定目录下。

- 安装git和git-lfs

3)注册码云SSH公钥,请参考码云帮助中心。(仅公钥方式需要进行该项设置)
- 生成SSH公钥:SHA256:OC/wGwB1lQJG1Vokpj7I0+05o81FAQaTYO1Hz4lu0Zo

5 使用DevEco Device tool拉取源码
- 通过repo + https 下载。
- 会出现报错,需要对python设置为软链接:
sudo ln -s /usr/bin/python3 /usr/bin/python
。

- 下载
repo init -u https://gitee.com/openharmony/manifest.git -b master --no-repo-verify

- 同样执行后两句即可。
- 有个很严重的问题,源码太大了下不下来。
- Author:Koreyoshi
- URL:https://Koreyoshi1216.com/article/1b8c7b13-c6a7-8056-b757-fc35c71ba7ca
- Copyright:All articles in this blog, except for special statements, adopt BY-NC-SA agreement. Please indicate the source!
Relate Posts