社区编辑申请
注册/登录
OpenHarmony第三方组件(第三方库)添加到编译系统方式理解(L2)
系统
通过third_party中三方组件添加到编译系统,以及调用第三方组件的简单例子,让初学者大概了解第三方组件如何加入到编译系统中去。

想了解更多内容,请访问:

51CTO和华为官方合作共建的鸿蒙技术社区

https://harmonyos.51cto.com

简介

  • 调用第三方组件sqlite的时候,以为跟普通模块一样,有BUILD.gn,也有对应ohos.build,subsystem名称 和 parts名称,实际没有ohos.build,这跟其他模块不一样,刚开始接触不理解。
  • 通过third_party中三方组件添加到编译系统,以及调用第三方组件的简单例子,让初学者大概了解第三方组件如何加入到编译系统中去。

第三组件demo

  • 编译之后的名称:libmythird_lib.z.so
  • 三方组件路径:third_party\mythird
  • 编译配置:third_party\mythird\BUILD.gn
  1. # 三组件没有写sub_example和part_name 
  2. # 编译后输出目录:out\ohos-arm-release\common\common 
  3. ohos_shared_library("mythird_lib") { 
  4.   sources = [ 
  5.     "src/mythird.c" 
  6.   ] 
  7.   public_configs = [ ":mythird_config" ] 

三方组件调用demo

  • 编译之后的路径:out\ohos-arm-release\sub_example\partB\mythird_use
  • 代码目录:test\example\partB\mythird_use
  • 编译配置路径: test\example\partB\mythird_use\BUILD.gn
  1. import("//build/ohos.gni"
  2.  
  3. ohos_executable("mythird_use") { 
  4.  
  5.   sources = [ 
  6.     "src/main.c" 
  7.   ] 
  8.   deps = [                                 
  9.     "//third_party/mythird:mythird_lib" # 依赖第三组件,也就把第三组件加入到了编译系统 
  10.   ] 
  11.  
  12.   install_enable = true 
  13.   part_name = "partB" 
  14.   subsystem_name = "sub_example" 
  • ohos.build添加的内容
  1.     "subsystem""sub_example"
  2.     "parts": { 
  3.         "partB": { 
  4.             "module_list": [ 
  5.                 ... 
  6.                 "//test/example/partB/mythird_use:mythird_use" 
  7.             ], 
  8.     ... 

编译

第三组件编译命令:

  1. ./build.sh --product-name Hi3516DV300 --ccache --build-target mythird_lib 

三方组件调用可执行文件编译命令:

  1. ./build.sh --product-name Hi3516DV300 --ccache --build-target mythird_use 

测试运行

编译成功后,可以把编译好的libmythird_lib.z.so和mythird_use用hdc_std.exe发送到Hi3516DV300开发板中去运行,在串口终端上输出三方组件的调用测试结果。

  • 修改系统目录权限,目录能读能写:
  1. mount -o remount,rw / 
  • libmythird_lib.z.so放入开发板/system/lib目录下:
  1. hdc_std.exe file send Z:\out\ohos-arm-release\common\common\libmythird_lib.z.so /system/lib 
  • mythird_use放入开发板本人自建/data/test目录下:
  1. hdc_std.exe file send Z:\out\ohos-arm-release\sub_example\partB\mythird_use /data/test 
  • 修改成可执行权:
  1. chmod 0711 /data/test/mythird_use 
  • 运行可执行程序:
  1. /data/test/mythird_use 
OpenHarmony 第三方组件(第三方库)添加到编译系统方式理解(L2)-鸿蒙HarmonyOS技术社区

想了解更多内容,请访问:

51CTO和华为官方合作共建的鸿蒙技术社区

https://harmonyos.51cto.com

 

责任编辑:jianghua 来源: 鸿蒙社区
相关推荐

2022-05-11 15:08:52

驱动开发系统移植

2022-05-27 15:04:53

鸿蒙操作系统

2022-02-25 14:42:09

OpenHarmon环境搭建鸿蒙

2022-02-28 14:54:48

openHarmon鸿蒙操作系统

2022-03-28 15:40:34

harmony鸿蒙操作系统

2022-03-04 15:43:36

文件管理模块Harmony鸿蒙

2022-03-14 15:11:01

harmony鸿蒙操作系统

2022-02-21 15:38:57

Openharmon操作系统鸿蒙

2022-05-17 11:30:34

Stage模型浏览器鸿蒙

2022-02-21 14:49:26

OpenHarmon操作系统鸿蒙

2022-02-08 15:15:26

2022-04-14 11:53:38

HarmonyRelease鸿蒙

2022-01-24 18:43:20

2022-01-21 21:22:24

2022-02-09 19:31:41

2022-05-30 15:08:33

包管理子系统包安装模块

2021-12-02 10:05:01

2021-11-08 07:19:45

2021-08-06 15:09:22

2021-10-25 09:53:52

同话题下的热门内容

微软 Windows 11 Build 22000.856(KB5016629)正式版发布:解决点击“开始”菜单无反应问题HarmonyOS应用开发:鸿蒙JS实战,计算器功能开发!CPU突然飙高,系统反应慢怎么排查,我来教教你超实用的 Linux 高级命令,运维同仁一定要懂!微软 Windows 11 版本 22H2 将修复导致某些 PC 速度变慢的奇怪 Bug微软 Windows 11 Beta 预览版 22621.575 和 22622.575 (KB5016694) 发布,附更新内容大全谷歌搜索突发全球性宕机请不要再下载这些Vscode插件了

编辑推荐

你应该知道的八款国产操作系统为什么你可能想要略过Ubuntu 17.04?HarmonyOS 2.0鸿蒙第二期开发者Beta公测申请指南让后端开发情何以堪?前端程序猿薪资大曝光谷歌“断供”华为!中国真写不出操作系统?
我收藏的内容
点赞
收藏

51CTO技术栈公众号