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
# 三组件没有写sub_example和part_name 
# 编译后输出目录:out\ohos-arm-release\common\common 
ohos_shared_library("mythird_lib") { 
  sources = [ 
    "src/mythird.c" 
  ] 
  public_configs = [ ":mythird_config" ] 

  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.

三方组件调用demo

  • 编译之后的路径:out\ohos-arm-release\sub_example\partB\mythird_use
  • 代码目录:test\example\partB\mythird_use
  • 编译配置路径: test\example\partB\mythird_use\BUILD.gn
import("//build/ohos.gni"
 
ohos_executable("mythird_use") { 
 
  sources = [ 
    "src/main.c" 
  ] 
  deps = [                                 
    "//third_party/mythird:mythird_lib" # 依赖第三组件,也就把第三组件加入到了编译系统 
  ] 
 
  install_enable = true 
  part_name = "partB" 
  subsystem_name = "sub_example" 

  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.
  • 9.
  • 10.
  • 11.
  • 12.
  • 13.
  • 14.
  • 15.
  • ohos.build添加的内容

    "subsystem""sub_example"
    "parts": { 
        "partB": { 
            "module_list": [ 
                ... 
                "//test/example/partB/mythird_use:mythird_use" 
            ], 
    ... 

  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.
  • 9.
  • 10.

编译

第三组件编译命令:

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

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

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

测试运行

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

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

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

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

https://harmonyos.51cto.com

 

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

2015-11-05 16:44:37

第三方登陆android源码

2019-07-30 11:35:54

AndroidRetrofit

2017-12-11 15:53:56

2021-03-03 09:42:26

鸿蒙HarmonyOS图片裁剪

2014-07-23 08:55:42

iOSFMDB

2024-04-03 12:57:29

2009-12-31 14:38:34

Silverlight

2016-10-21 14:09:10

2021-03-01 14:00:11

鸿蒙HarmonyOS应用

2021-03-12 16:35:33

鸿蒙HarmonyOS应用

2021-03-24 09:30:49

鸿蒙HarmonyOS应用

2014-07-22 10:56:45

Android Stu第三方类库

2010-03-03 15:10:49

第三方Python库

2013-08-14 09:50:32

iOS类库

2019-09-03 18:31:19

第三方支付电商支付行业

2022-04-25 09:00:46

npm包管理器

2021-08-26 16:07:46

鸿蒙HarmonyOS应用

2021-08-03 10:07:41

鸿蒙HarmonyOS应用

2014-07-25 09:33:22

2021-03-10 15:03:40

鸿蒙HarmonyOS应用
点赞
收藏

51CTO技术栈公众号