type
status
date
slug
summary
tags
category
icon
password
Property
Dec 3, 2022 03:28 AM
参考
问题
核心问题还是Google编译NDK的commandline tools版本太低,导致的符号问题。
从aosp下回来cmake编译出来的动态库插件简单的能加载,但是复杂点的还是会报符号找不到。
解决
自己编译llvm-android,然后将clang-14替换进去即可
注意:在高版本macOS上编译动态库插件的时候,需要在
CMakeLists.txt
加入以下内容效果
![notion image](https://www.notion.so/image/https%3A%2F%2Fs3-us-west-2.amazonaws.com%2Fsecure.notion-static.com%2F031fe527-91be-42f0-8d15-34dc9a838fe3%2F%25E6%2588%25AA%25E5%25B1%258F2022-12-03_10.34.59.png?table=block&id=80da6c1c-18b5-4e23-b3f6-12456568a2b1&t=80da6c1c-18b5-4e23-b3f6-12456568a2b1&width=620&cache=v2)
下载
我编译的版本为 ndk-r25b 25.1.8937393 不要替换错了
支持 x86_64 / arm64
链接: https://pan.baidu.com/s/1ApNkR56MK5VNw49NOm48wg?pwd=omle 提取码: omle
cmake.zip: lib64/cmake 文件夹的压缩 clang-14.zip: clang-14 install.zip: llvm-android编译出来的整个install文件夹
用法:
- 替换 clang-14
- 将 cmake.zip 解压到 lib64/cmake
然后就可以用NDK环境编译LLVM动态库插件了