OpenHarmony 4.0 源码编译hb 问题排查记录

OS:Ubuntu 22.04 x86_64

下载好Openharmony 4.0Beta2 的源码

复制代码
$ pip3 install ohos-build
$ cd openharmony-4.0b2
$ hb set
Traceback (most recent call last):
  File "/home/loongson/.local/bin/hb", line 8, in <module>
    sys.exit(main())
  File "/home/loongson/.local/lib/python3.10/site-packages/hb/__main__.py", line 49, in main
    topdir = find_top()
  File "/home/loongson/.local/lib/python3.10/site-packages/hb/__main__.py", line 37, in find_top
    raise Exception("Please call hb utilities inside source root directory")
Exception: Please call hb utilities inside source root directory

从错信息看是找到某个目录,hb 是python写的,所以打算看看源码是找个目录出错了,根据出错信息直接看源码文件。

复制代码
$ vim /home/loongson/.local/lib/python3.10/site-packages/hb/__main__.py

VERSION = "0.4.6"


def find_top():
    cur_dir = os.getcwd()
    while cur_dir != "/":
        hb_internal = os.path.join(cur_dir, 'build/lite/hb_internal')
        if os.path.exists(hb_internal):
            return cur_dir

        cur_dir = os.path.dirname(cur_dir)
    raise Exception("Please call hb utilities inside source root directory")

查看python 代码可知报错原因是没找到 build/lite/hb_internal,在OpenHamony 源码下确实没有发现有build/lite/hb_internal, 去OpenHarmony 源码仓发现build_lite这个仓库里面有,所以从这里下载一份到源码放到OpenHarmony 中去。

下载build_lite 源码, 从中复制hb_internal 到openharmony 的源码目录即可。

复制代码
$ cd ../
$ git clone https://gitee.com/openharmony/build_lite
$ cd build_lite
$ cp -rf hb_internal ../openharmony-4.0b2/build/lite

$ cd ../openharmony-4.0b2
相关推荐
sinat_384241096 小时前
HarmonyOS音乐播放器开发实战:从零到一打造完整鸿蒙系统音乐播放器应用 2
华为·gitlab·intellij-idea·harmonyos·visual studio·webstorm
waeng_luo8 小时前
HarmonyOS开发-多线程与异步编程
harmonyos·鸿蒙2025领航者闯关·鸿蒙6实战·#鸿蒙2025领航者闯关
花开彼岸天~8 小时前
鸿蒙平台使用 `video_thumbnail` 插件指南
华为·harmonyos
特立独行的猫a8 小时前
QT开发鸿蒙PC应用:环境搭建及第一个HelloWorld
开发语言·qt·harmonyos·环境搭建·鸿蒙pc
花开彼岸天~8 小时前
Flutter跨平台开发鸿蒙化定位组件使用指南
flutter·华为·harmonyos
sinat_3842410910 小时前
HarmonyOS音乐播放器开发实战:从零到一打造完整鸿蒙系统音乐播放器应用 1
华为·harmonyos
个案命题11 小时前
鸿蒙ArkUI状态管理新宠:@Once装饰器全方位解析与实战
华为·harmonyos
云_杰12 小时前
取件伙伴性能提升——长列表
性能优化·harmonyos
花开彼岸天~13 小时前
Flutter跨平台开发鸿蒙化日志测试组件使用指南
flutter·elasticsearch·harmonyos
妮妮分享13 小时前
Harmony NEXT 定位 SDK:开启鸿蒙原生应用精准定位新时代
华为·harmonyos