openharmony_3.1 编译第三方库
小小团子
发布于 2023-3-31 16:13
9575浏览
1收藏
cmake 编译BehaviorTree项目为例,下载BehaviorTree到openharmony/third_party
目录
1、启动openharmony容器编译sdk
2、cmake 编译项目
!!! 注意这里执行的 cmake 是 SDK 内的 cmake
,不是你自己系统上原有的 cmake 。包括 toolchain file 也是 SDK 内的。执行 make 即可
3、非cmake编译
方法1:我们可以使用 cmake 构建脚本重写开源库的构建过程
这种方法需要分析源库的构建脚本或者分析源库的编译构建日志,我这里推荐简单点的分析构建日志(可以不必去学习 configure 的语法)。很多库为了性能一般会对代码进行处理器级的优化(SIMD: SSE,AVX; NEON),因此编译构建日志最好采用交叉编译工具链的日志,不要盲目的根据 x86_64 的构建日志进行翻译(cmake)。如果使用此方法请参考 oh 三方库 cmake 编写指导及编写规范。
方法2:使用项目原生的构建工具例如 configure、makefile
如何使用原生的构建工具?首先我们需要知道构建脚本并不是直接调用 gcc 或者 clang 编译工具链的。而是优先调用 CC 环境变量以达到调用 c 编译器的目的,对应的 CXX 环境变量对应 c++ 编译器…。等等一系列的编译工具都有自己对应的环境变量。通过设置这些环境变量,让构建工具使用 ohos SDK 的编译工具链。
设置 ohos 64bit 库编译工具链环境变量
设置 ohos 32bit 库编译工具链环境变量
编译
make
分类
标签
已于2023-3-31 16:14:42修改
赞
1
收藏 1
回复
1
3
1
相关推荐
这个是说使用鸿蒙的编译工具,然后编译第三方移植过来的库吗?编译后的结果是什么?
这个使openharmony的cmake工具,编译生成so文件了
使用这种方式编译GmSSL-v2版本会提示源码中有错误信息 但是使用Android NDK 编译的时候是成功的 没有提示任何错误