• 体验Windows本地编译OpenHarmony 2.0 Canary


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

    1 准备工作

    参考社区的文档

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

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

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

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

    看这个文档才对

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

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

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

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

    在VScode设置工具链

    2 编译

    打开源码

    编译成功。

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

    3 烧录

    修改applicationssamplewifi-iotappBUILD.gn

    lite_component("app") {
        features = [
            #"startup",
            "iothardware:led_example"
        ]
    }
    

    编译Led demo

    参考官网,设置端口

    烧录成功

    4 一些报错

    • 打开工程报错
    [2021/6/26下午5:46:22] 无法使用 compilerPath“riscv32-unknown-elf-gcc”解析配置。 请改用“D:	oolStrawberrycingcc.exe”。
    
    无法找到“D:HarmonyDevcode-2.0-canaryinclude”。
    无法找到“D:HarmonyDevcode-2.0-canarysrc”。
    无法找到“riscv32-unknown-elf-gcc”。
    

    不用管

    • 编译报错
    [OHOS ERROR] [151/303] COPY ../../../foundation/distributedschedule/samgr_lite/config/system_capability.json obj/foundation/distributedschedule/samgr_lite/config/system_capability.json
    [OHOS ERROR] FAILED: obj/foundation/distributedschedule/samgr_lite/config/system_capability.json
    [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
    [OHOS ERROR] Fatal Python error: init_sys_streams: can't initialize sys standard streams
    [OHOS ERROR] Traceback (most recent call last):
    [OHOS ERROR]   File "C:UsersqwetoAppDataLocalProgramsPythonPython38libio.py", line 54, in <module>
    [OHOS ERROR] ImportError: cannot import name 'open_code' from 'io' (unknown location)
    

    解:
    按照网友的方法:

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

    2.删除C:UsersAdministrator.deveco-device-toolcore文件夹

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

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

    查看日志"C:UsersqwetoAppDataLocaldeveco-device-tool-installerdeveco-install.log"

    Looking for python3 
    looking in registry bunch "HKEY_CURRENT_USERSoftwarePythonPythonCore" 
    check path D:Program Files (x86)Python38-32python.exe 
    check path 1 匹配。 
    looking in registry bunch "HKEY_LOCAL_MACHINESoftwarePythonPythonCore" 
    Python3 is not found. Aborted. 
    

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

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

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

    尝试更新一下conda

    conda update --all
    

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

    conda报错

    Collecting package metadata (current_repodata.json): failed
    
    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

    (完)

  • 相关阅读:
    vs编译错误error C2059 由extern "C"导致的错误处理
    原生JS:响应式轮播图
    JSP用户关注取关实现
    JSP和AJAX实现登录注册
    MySQL常用命令
    offsetWidth/getBoundingRect()/scrollWidth/client用法总结
    画廊相册—原生JavaScript实现
    《JavaScript DOM 编程艺术》读书笔记
    天猫网页前端实现
    Docker安装和配置(链接集合)
  • 原文地址:https://www.cnblogs.com/obarong/p/14939859.html
Copyright © 2020-2023  润新知