如何将三方库集成到hap包中——通过IDE集成cmak构建方式的C/C++三方库

简介

cmake构建方式是开源三方库的主流构建方式。DevEco Studio目前以支持cmake的构建方式。本文将通过在IDE上适配cJSON三方库为例讲来解如何在IDE上集成cmake构建方式得三方库。

创建工程

在开发进行三方库适配以及napi接口开发前,我们需要创建一个三方库对应的工程,具体创建工程方法可以参照文档通过IDE开发一个Napi工程

IDE上适配三方库

原生库准备

下载代码

通过cJSON github网址,通过Code>>Download ZIP选项下载最新版本的源码包,并将其解压后放在IDE工程中的CPP目录下。

  • 下载cJSON v1.7.17版本的库:

  • 将库放在IDE工程:

加入编译构建

原生库源码准备完后,我们需要将库加入到工程的编译构建中。在工程目录CPP下的CMakeLists.txt文件中,通过add_subdirectory将cJSON加入到编译中,并通过target_link_libraries添加对cjson的链接,如下图:

到此,我们的三方库适配已经完成,可以通过IDE上的Run entry按钮进行编译及运行了。

为了能让大家更好的学习鸿蒙(HarmonyOS NEXT)开发技术,这边特意整理了《鸿蒙开发学习手册》(共计890页),希望对大家有所帮助:https://qr21.cn/FV7h05

《鸿蒙开发学习手册》:

如何快速入门:https://qr21.cn/FV7h05

  1. 基本概念
  2. 构建第一个ArkTS应用
  3. ……

开发基础知识:https://qr21.cn/FV7h05

  1. 应用基础知识
  2. 配置文件
  3. 应用数据管理
  4. 应用安全管理
  5. 应用隐私保护
  6. 三方应用调用管控机制
  7. 资源分类与访问
  8. 学习ArkTS语言
  9. ……

基于ArkTS 开发:https://qr21.cn/FV7h05

  1. Ability开发
  2. UI开发
  3. 公共事件与通知
  4. 窗口管理
  5. 媒体
  6. 安全
  7. 网络与链接
  8. 电话服务
  9. 数据管理
  10. 后台任务(Background Task)管理
  11. 设备管理
  12. 设备使用信息统计
  13. DFX
  14. 国际化开发
  15. 折叠屏系列
  16. ……

鸿蒙开发面试真题(含参考答案):https://qr18.cn/F781PH

鸿蒙开发面试大盘集篇(共计319页):https://qr18.cn/F781PH

1.项目开发必备面试题
2.性能优化方向
3.架构方向
4.鸿蒙开发系统底层方向
5.鸿蒙音视频开发方向
6.鸿蒙车载开发方向
7.鸿蒙南向开发方向

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-04-14 11:22:03       98 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-04-14 11:22:03       106 阅读
  3. 在Django里面运行非项目文件

    2024-04-14 11:22:03       87 阅读
  4. Python语言-面向对象

    2024-04-14 11:22:03       96 阅读

热门阅读

  1. 细说php语法糖

    2024-04-14 11:22:03       40 阅读
  2. 蓝桥杯python组基础知识速学!!!!

    2024-04-14 11:22:03       114 阅读
  3. MySQL基础教程(第二部分)

    2024-04-14 11:22:03       47 阅读
  4. Mysql入门基础教程(第一部分)

    2024-04-14 11:22:03       36 阅读
  5. python 解析json

    2024-04-14 11:22:03       36 阅读
  6. Golang ProtoBuf 初学者完整教程:安装

    2024-04-14 11:22:03       46 阅读
  7. LC 53.最大子数组和

    2024-04-14 11:22:03       44 阅读
  8. vue-element-admin中使用mock数据和真实接口同时存在

    2024-04-14 11:22:03       43 阅读
  9. react异步组件如何定义使用 标准使用方法

    2024-04-14 11:22:03       41 阅读
  10. 【React Router】路由搭建

    2024-04-14 11:22:03       40 阅读