HarmonyOS鸿蒙Next中缺少符号CJ_MCC_ReadStruct

HarmonyOS鸿蒙Next中缺少符号CJ_MCC_ReadStruct

创建仓颉模板应用,然后编译,默认是缺abifilter,配置以后编译能过了但是app卡死:

22:17:15.358 E C03900/CJ-RUNTIME: load cj library failed:  
Error relocating /data/storage/el1/bundle/libs/x86_64/libohos_app_cangjie_entry.so:  
CJ_MCC_ReadStruct: symbol not found  

E C01325/UN: [cj_runtime.cpp:110]load app library fail  
E C01317/AppKit: [main_thread.cpp:1584]null runtime  
E C01332/UIAbility: [ui_ability_thread.cpp:136]null ability

更多关于HarmonyOS鸿蒙Next中缺少符号CJ_MCC_ReadStruct的实战教程也可以访问 https://www.itying.com/category-93-b0.html

2 回复

在HarmonyOS Next中,CJ_MCC_ReadStruct符号缺失可能是由于以下原因:

  1. 该符号属于未公开的内部API
  2. 当前SDK版本未包含此功能
  3. 该接口可能已被弃用或重构
  4. 模块依赖关系未正确配置

检查方法:

  1. 确认使用的SDK版本是否支持该接口
  2. 查阅官方API文档验证接口是否存在
  3. 检查是否缺少必要的模块依赖声明

更多关于HarmonyOS鸿蒙Next中缺少符号CJ_MCC_ReadStruct的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html


这个错误表明在HarmonyOS Next的仓颉模板应用中,运行时缺少关键符号CJ_MCC_ReadStruct。该符号属于仓颉框架的核心功能,通常由libohos_app_cangjie_entry.so动态库调用。

可能原因:

  1. SDK版本不匹配:当前使用的SDK可能未包含完整的仓颉框架实现
  2. 编译配置问题:ABI过滤设置可能影响了必要库的链接
  3. 依赖缺失:项目可能缺少仓颉框架的完整依赖项

建议检查:

  1. 确认使用的HarmonyOS SDK版本是否支持完整的仓颉功能
  2. 检查build.gradle中的依赖配置,确保包含所有必需的仓颉模块
  3. 验证NDK工具链版本是否与SDK兼容

该错误通常会导致运行时初始化失败,表现为应用卡死。需要确保开发环境配置与仓颉模板要求完全一致。

回到顶部