当前位置: 首页 > news >正文

编译OpenHarmony-4.0-Release RK3566 报错

编译OpenHarmony-4.0-Release RK3566 报错

    • 1. 报错问题
    • 2.问题解决
    • 3.解决方案
    • 4.​调试技巧​

subsystem name config incorrect in ‘/home/openharmony/OpenHarmony/vendor/kaihong/khdvk_356b/bundle.json’, build file subsystem name is kaihong_products,configured subsy

1. 报错问题

在这里插入图片描述

2.问题解决

  • ​子系统名称拼写错误​
    在 bundle.json 或 subsystem_config.json 中配置的 subsystem 名称与实际定义的名称不一致。
    例如:“subsystem”: “ace” 写成了 “subsystem”: “aec”。
  • ​子系统未在 subsystem_config.json 中注册​
    OpenHarmony 要求所有子系统必须在 build/subsystem_config.json 中明确定义,否则编译时会报错。
  • bundle.json 文件格式错误​
    JSON 格式错误(如缺少逗号、引号不匹配)。
    字段层级错误(如 subsystem 字段未放在正确位置)。
  • 子系统依赖未正确配置​
    如果当前组件依赖其他子系统,但未在 bundle.json 的 deps 中声明。

3.解决方案

  1. ​检查子系统名称拼写​
    打开你的组件的 bundle.json 文件,确认 subsystem 字段的值是否与 subsystem_config.json 中的定义一致。
    例如:
    jsonjson复制json复制// bundle.json
    {
    “name”: “your_component”,
    “subsystem”: “ace”, // 必须与 subsystem_config.json 中的名称一致
    “components”: […]
    }

  2. ​验证 subsystem_config.json 注册​
    检查 build/subsystem_config.json 文件,确认你的子系统是否已注册。
    例如:
    jsonjson复制json复制// build/subsystem_config.json
    {
    “ace”: {
    “path”: “foundation/ace”,
    “name”: “ace”
    },
    “your_subsystem”: { // 确保你的子系统在这里有定义
    “path”: “your/path”,
    “name”: “your_subsystem”
    }
    }

  3. ​检查 bundle.json 文件格式​

使用 JSON 校验工具(如 JSONLint)验证 bundle.json 的语法是否正确。
确保字段层级正确,例如:
jsonjson复制json复制{
“name”: “your_component”,
“subsystem”: “correct_name”, // 必须在顶层
“components”: [
{
“component”: “your_component”,
“features”: []
}
]
}

  1. ​检查子系统依赖​
    如果组件依赖其他子系统,需在 bundle.json 中声明 deps:
    jsonjson复制json复制{
    “deps”: {
    “subsystem”: “distributed_schedule”, // 依赖的子系统名
    “components”: [“ability_runtime”]
    }
    }

  2. ​清理并重新编译​
    如果问题仍未解决,尝试清理编译缓存后重新编译:
    bashbash复制bash复制rm -rf out/ # 清理输出目录
    ./build.sh --product-name your_product # 重新编译

4.​调试技巧​

​ 查看详细日志​
在编译命令后添加 --verbose 参数,获取更详细的错误信息:
bashbash复制bash复制./build.sh --product-name your_product --verbose
​对比官方示例​
参考 OpenHarmony 官方仓库中的 bundle.json 文件(如 foundation/ace),检查你的配置是否符合规范。
​检查 HARMOY_OS_BUILD_PATH 环境变量​
如果自定义了子系统路径,确保环境变量 HARMOY_OS_BUILD_PATH 指向正确的目录。
如果以上方法仍未解决问题,请提供以下信息以便进一步排查:
完整的错误日志(截图或文本)。
你的 bundle.json 和 subsystem_config.json 文件内容(脱敏后)。
你使用的 OpenHarmony 版本(如 3.2 Release 或 4.0 Beta)。

http://www.lryc.cn/news/584139.html

相关文章:

  • 【保姆级教程】基于anji-plus-captcha实现行为验证码(滑动拼图+点选文字),前后端完整代码奉上!
  • 前端面试十一之TS
  • 电路研究9.4——合宙Air780EP的LuatOS、CSDK跟标准AT
  • 【Ubuntu】编译sentencepiece库
  • php中array($this, ‘loadClass‘)表示啥意思?
  • 【STM32 学习笔记】WDR看门狗
  • 在 Apple 生态中,`aarch64` 和 `arm64` 本质上是相同的架构
  • 解决问题:在cmd中能查看到pnpm版本,在vscode终端中却报错
  • Rust and the Linux Kernel
  • 北京-4年功能测试2年空窗-报培训班学测开-第四十七天
  • 【世纪龙科技】汽车信息化综合实训考核平台(机电方向)-学测
  • 倍福套料VE变量和M函数新增配置
  • python学习打卡:DAY 30 模块和库的导入
  • 2. 【Blazor全栈开发实战指南】-- 目录
  • 敏捷测试中的质量闸门如何设置?
  • STM32F103C8T6单片机内部执行原理及启动流程详解
  • 深入了解 Vim 编辑器:从入门到精通
  • 学习中断配置的一天(第五天)
  • 《PyQt6-3D:开启Python 3D编程新世界 2》
  • Spring Boot中的中介者模式:终结对象交互的“蜘蛛网”困境
  • Synopsys 逻辑综合之 MultiBit Flip-Flop 与 ICG
  • SIMATIC S7-1200的以太网通信能力:协议与资源详细解析
  • 深度学习-正则化
  • 小架构step系列10:日志热更新
  • B2、进度汇报(— 25/06/16)
  • 【运维架构】云计算运维架构师与基础设施,技术路线,Linux证书(标准化/定制化/CNCF,公有云/混合云/私有云)
  • Tomcat:Java Web应用的幕后英雄
  • linux 4.14 kernel屏蔽arm arch timer的方法
  • 防抖在vue中应用
  • Vue前端面试常问问题详解