写点什么

【坚果派 - 坚果】OpenHarmony 新增并编译芯片解决方案

作者:坚果
  • 2023-04-14
    广东
  • 本文字数:1015 字

    阅读完需:约 3 分钟

【坚果派-坚果】OpenHarmony新增并编译芯片解决方案

OpenHarmony 新增并编译芯片解决方案

作者:坚果

团队:坚果派

公众号:“大前端之旅”

润开鸿技术专家,华为 HDE,InfoQ 签约作者,OpenHarmony 布道师,擅长 HarmonyOS 应用开发、熟悉服务卡片开发,在“战码先锋”活动中作为大队长,累计培养三个小队长,带领 100+队员完成 Pr 的提交合入。欢迎通过主页或者私信联系我,加入坚果派,一起学习鸿蒙应用开发。

编译构建支持添加新的芯片解决方案厂商,具体步骤如下:

1.创建芯片解决方案目录。

按照芯片解决方案配置规则创建目录,以芯片厂商 jianguo 的“jianguoPro“开发板为例, 在代码根目录执行:


mkdir -p device/board/realtek/rtl8720
复制代码

2.创建内核适配目录,并编写开发板编译配置 config.gni 文件。

以 jianguo 的“jianguoPro“开发板的 liteos_a 适配为例,device/board/jianguo/jianguoPro/liteos_a/config.gni 的内容如下:


# Kernel type, e.g. "linux", "liteos_a", "liteos_m".kernel_type = "liteos_a"
# Kernel version.kernel_version = "3.0.0"
# Board CPU type, e.g. "cortex-a7", "riscv32".board_cpu = "real-m300"
# Board arch, e.g. "armv7-a", "rv32imac".board_arch = ""
# Toolchain name used for system compiling.# E.g. gcc-arm-none-eabi, arm-linux-harmonyeabi-gcc, ohos-clang, riscv32-unknown-elf.# Note: The default toolchain is "ohos-clang". It's not mandatory if you use the default toochain.board_toolchain = "gcc-arm-none-eabi"
# The toolchain path instatlled, it's not mandatory if you have added toolchian path to your ~/.bashrc.board_toolchain_path = rebase_path("//prebuilts/gcc/linux-x86/arm/gcc-arm-none-eabi/bin", root_build_dir)
# Compiler prefix.board_toolchain_prefix = "gcc-arm-none-eabi-"
# Compiler type, "gcc" or "clang".board_toolchain_type = "gcc"
# Board related common compile flags.board_cflags = []board_cxx_flags = []board_ld_flags = []
复制代码

3.编写编译脚本。

在开发板目录下创建 BUILD.gn,target 名称应与开发板名称一致。以 jianguo 的 jianguoPro 开发板为例,device/board/jianguo/jianguoPro/BUILD.gn 内容可以是:


group("rtl8720") { # target类型也可以shared_library, static_library, executable  # 具体内容  ......}
复制代码

4.编译芯片解决方案。

在开发板目录下执行 hb build,即可启动芯片解决方案的编译。

发布于: 刚刚阅读数: 5
用户头像

坚果

关注

此间若无火炬,我便是唯一的光 2020-10-25 加入

公众号:“大前端之旅”,OpenHarmony布道师,润和软件鸿蒙KOL,InfoQ签约作者,电子发烧友鸿蒙KOL

评论

发布
暂无评论
【坚果派-坚果】OpenHarmony新增并编译芯片解决方案_OpenHarmony_坚果_InfoQ写作社区