HarmonyOS 鸿蒙Next如何编译Gmssl库为s,so或者.a库使用

发布于 1周前 作者 sinazl 来自 鸿蒙OS

HarmonyOS 鸿蒙Next如何编译Gmssl库为s,so或者.a库使用

1.有大佬知道怎么编译鸿蒙next下的gmssl库嘛

2.原先安卓上写的c文件可以在鸿蒙next项目上使用嘛,和cpp文件如何做区分呢,这块如何也编译进so包里呢

5 回复

1、gmssl已鸿蒙化,请参考:https://gitee.com/openharmony-sig/tpc_c_cplusplus/tree/master/thirdparty/GmSSL

2、三方so库要经过鸿蒙化之后才可以调用。您可以参考链接:https://gitee.com/openharmony-sig/tpc_c_cplusplus/blob/master/lycium/doc/app_calls_third_lib.md

非native模块无法直接引用so库,推荐将so库的实现封装到HAR包中,再引用HAR包进行业务实现
native模块如何使用三方so库:
1)cpp目录下新增include文件夹,将.h文件放入到include目录下。
2)libs目录下,将so包放到对应的v7a或者v8a的目录下(取决于编译的so包,如果没有对应目录就创建对应目录)。
3)cmakelist的文件中target_link_libraries,添加对应的so包。
4)build-profile.json5文件新增abiFilters参数,如何添加参考文档
https://developer.huawei.com/consumer/cn/doc/harmonyos-guides-V5/ide-hvigor-build-profile-0000001778834297-V5

老哥,这网站这部分指南都是1年前的东西啊,交叉编译连对应SDK版本都找不到5.0以上的,你这边成功了嘛

为啥环境搭好,编译usr目录下是空文件夹,并没有so包生成

so文件是在安装目录下的lib目录下

在HarmonyOS鸿蒙Next平台上编译Gmssl库为.so.a库,通常涉及以下几个步骤:

  1. 获取Gmssl源码:首先,确保你已经从Gmssl的官方仓库或可信来源获取了最新版本的源码。

  2. 配置编译环境:安装必要的编译工具链,如NDK(Native Development Kit),并确保你的开发环境已正确配置为支持HarmonyOS应用的编译。

  3. 修改CMakeLists或Makefile:根据Gmssl的源码结构,你可能需要修改其CMakeLists.txt文件或Makefile,以适配HarmonyOS的编译要求。这通常包括指定目标架构、编译器选项和链接库路径等。

  4. 编译Gmssl:在配置好环境后,使用cmakemake命令编译Gmssl源码。编译过程中,应指定生成静态库(.a)或动态库(.so)的选项。

  5. 验证生成的库:编译完成后,检查输出目录,确认是否成功生成了.so.a库文件。

请注意,由于HarmonyOS和Gmssl的更新,具体的编译步骤和配置可能会有所变化。如果上述步骤无法直接解决问题,可能是由于版本差异或特定环境的配置问题。

如果问题依旧没法解决请联系官网客服,官网地址是:https://www.itying.com/category-93-b0.html

回到顶部