体验Windows本地编译OpenHarmony 2.0 Canary

系统
之前用Ubuntu虚拟机来编译鸿蒙源码,听说DevEco Device Tool 2.2 Beta1可以在Windows一站式编译。本篇就带大家尝尝。

[[408911]]

想了解更多内容,请访问:

51CTO和华为官方合作共建的鸿蒙技术社区

https://harmonyos.51cto.com

之前用Ubuntu虚拟机来编译鸿蒙源码,听说DevEco Device Tool 2.2 Beta1可以在Windows一站式编译。马上尝尝。

一、准备工作

参考社区的文档

体验Windows本地编译OpenHarmony 2.0 Canary-鸿蒙HarmonyOS技术社区

参考官网文档,部署Windows环境。

体验Windows本地编译OpenHarmony 2.0 Canary-鸿蒙HarmonyOS技术社区

 上官网下载HUAWEI DevEco Device Tool 2.2 Beta1,简称DDT,关闭VScode后直接安装。

体验Windows本地编译OpenHarmony 2.0 Canary-鸿蒙HarmonyOS技术社区

检查各种工具的版本,我的VS code要升级一下,打开即会自动更新,更新完重启VS code即可。其他工具的更新也是参考官方文档就行,文档很全。

体验Windows本地编译OpenHarmony 2.0 Canary-鸿蒙HarmonyOS技术社区

官网的文档说支持Linux编译,我有点懵圈。

体验Windows本地编译OpenHarmony 2.0 Canary-鸿蒙HarmonyOS技术社区

看这个文档才对。

体验Windows本地编译OpenHarmony 2.0 Canary-鸿蒙HarmonyOS技术社区

 下载好源码,用bandizip解压一堆报错,换成在PowerShell用tar解压。

  1. tar -zxvf code-2.0-canary.tar.gz 

这是全量代码,解压花了十多分钟。

安装MinGW勾选这2个。其实只勾最下边那个就可以了吧?

体验Windows本地编译OpenHarmony 2.0 Canary-鸿蒙HarmonyOS技术社区

在VScode设置工具链

体验Windows本地编译OpenHarmony 2.0 Canary-鸿蒙HarmonyOS技术社区

二、编译

打开源码

体验Windows本地编译OpenHarmony 2.0 Canary-鸿蒙HarmonyOS技术社区

编译成功。

体验Windows本地编译OpenHarmony 2.0 Canary-鸿蒙HarmonyOS技术社区

花了90s,想要加快速度最好用服务器编译。

三、烧录

修改applications\sample\wifi-iot\app\BUILD.gn

  1. lite_component("app") { 
  2.     features = [ 
  3.         #"startup"
  4.         "iothardware:led_example" 
  5.     ] 

编译Led demo

参考官网,设置端口:

体验Windows本地编译OpenHarmony 2.0 Canary-鸿蒙HarmonyOS技术社区

 烧录成功。

[[408912]]

四、一些报错

打开工程报错

  1. [2021/6/26下午5:46:22] 无法使用 compilerPath“riscv32-unknown-elf-gcc”解析配置。 请改用“D:\tool\Strawberry\c\bin\gcc.exe”。 
  2. 1. 
  3. 1. 
  1. 无法找到“D:\HarmonyDev\code-2.0-canary\include”。 
  2. 无法找到“D:\HarmonyDev\code-2.0-canary\src”。 
  3. 无法找到“riscv32-unknown-elf-gcc”。 

不用管

编译报错

  1. [OHOS ERROR] [151/303] COPY ../../../foundation/distributedschedule/samgr_lite/config/system_capability.json obj/foundation/distributedschedule/samgr_lite/config/system_capability.json 
  2. [OHOS ERROR] FAILED: obj/foundation/distributedschedule/samgr_lite/config/system_capability.json 
  3. [OHOS ERROR] python D:/HarmonyDev/code-2.0-canary//build/lite/copy_files.py --src_type=file --src=../../../foundation/distributedschedule/samgr_lite/config/system_capability.json --dest_dir=obj/foundation/distributedschedule/samgr_lite/config/system_capability.json 
  4. [OHOS ERROR] Fatal Python error: init_sys_streams: can't initialize sys standard streams 
  5. [OHOS ERROR] Traceback (most recent call last): 
  6. [OHOS ERROR]   File "C:\Users\qweto\AppData\Local\Programs\Python\Python38\lib\io.py", line 54, in <module> 
  7. [OHOS ERROR] ImportError: cannot import name 'open_code' from 'io' (unknown location) 

解:

按照网友的方法:

1.卸载DevEco Device Tool,卸载VS Code,卸载Python

2.删除C:\Users\Administrator.deveco-device-tool\core文件夹

3.安装Python,VS Code,DevEco Device Tool 2.2 Beta1

重新安装DDT报错,找不到python3

体验Windows本地编译OpenHarmony 2.0 Canary-鸿蒙HarmonyOS技术社区

查看日志"C:\Users\qweto\AppData\Local\deveco-device-tool-installer\deveco-install.log"。

  1. Looking for python3  
  2. looking in registry bunch "HKEY_CURRENT_USER\Software\Python\PythonCore"  
  3. check path D:\Program Files (x86)\Python38-32\python.exe  
  4. check path 1 匹配。  
  5. looking in registry bunch "HKEY_LOCAL_MACHINE\Software\Python\PythonCore"  
  6. Python3 is not found. Aborted.  

指向一个以前安装过的python版本,卸载不干净。删掉注册表的3.8-32,不行。

体验Windows本地编译OpenHarmony 2.0 Canary-鸿蒙HarmonyOS技术社区

解:

下载官方文档推荐的版本,单独安装Python,不要用anaconda的,那个识别不到。

卸载Python3.8,保留了Anaconda用的3.7.4版本,但是DDT的主页直接打不开了。

尝试更新一下conda

  1. conda update --all 

还是一样。Anaconda更新后打不开了,卸载重装。

conda报错

  1. Collecting package metadata (current_repodata.json): failed 
  1. check_hostname requires server_hostname 

解:删除.condarc无效,退出代理软件有效。

DDT只认单独安装的Python,不认conda的。

参考

DevEco Device Tool 2.2 Beta1 在Windows环境一站式编译烧录体验-鸿蒙HarmonyOS技术社区-鸿蒙官方战略合作伙伴-51CTO.COM

https://harmonyos.51cto.com/posts/5821

IDE - HarmonyOS设备开发官网

https://device.harmonyos.com/cn/ide#download_release

用户指南-Windows开发环境准备

https://device.harmonyos.com/cn/docs/ide/user-guides/install_windows-0000001050164976

zh-cn/device-dev/quick-start/Readme-CN.md · OpenHarmony/docs - Gitee

https://gitee.com/openharmony/docs/blob/master/zh-cn/device-dev/quick-start/Readme-CN.md

用户指南-Windows平台源码编译

https://device.harmonyos.com/cn/docs/ide/user-guides/hi3861_windows-0000001101110444

想了解更多内容,请访问:

51CTO和华为官方合作共建的鸿蒙技术社区

https://harmonyos.51cto.com

 

责任编辑:jianghua 来源: 鸿蒙社区
相关推荐

2021-06-28 09:38:50

鸿蒙HarmonyOS应用

2021-09-16 15:04:28

鸿蒙HarmonyOS应用

2021-06-11 14:16:21

Windows 10WSL OpenHarmon

2023-08-11 14:06:58

鸿蒙Windows

2021-10-13 07:18:40

鸿蒙HarmonyOS应用

2023-11-18 10:24:50

微软WindowsAI

2021-07-21 09:58:50

鸿蒙HarmonyOS应用

2021-08-05 14:54:09

鸿蒙HarmonyOS应用

2024-07-26 16:39:33

鸿蒙系统开源构建系统

2023-05-23 06:52:02

Windows 11微软

2021-07-19 15:34:05

鸿蒙HarmonyOS应用

2021-10-09 10:12:39

鸿蒙HarmonyOS应用

2022-01-11 15:41:18

鸿蒙HarmonyOS应用

2023-07-27 14:38:33

开源鸿蒙

2023-03-07 07:37:38

Windows微软

2021-09-08 15:23:51

鸿蒙HarmonyOS应用

2021-08-06 15:09:22

鸿蒙HarmonyOS应用

2022-05-07 16:13:59

DevEcoTool鸿蒙

2021-12-02 10:05:01

鸿蒙HarmonyOS应用

2022-05-27 15:04:53

鸿蒙操作系统
点赞
收藏

51CTO技术栈公众号