Tencent / matrix

Matrix is a plugin style, non-invasive APM system developed by WeChat.
Other
11.66k stars 1.89k forks source link

编译需要NDK版本是多少啊,我自己编译后打包进app后,启动app报错 dlopen failed: cannot locate symbol "_Unwind_GetRegionStart" #859

Closed tennkou closed 1 year ago

tennkou commented 1 year ago

现象

自己编译 matrix-trace-canary 模块,(只改了些 java 代码,NDK 版本 android-ndk-r20b),使用 android-publish.gradle 发布到我的仓库,在 app 项目中引用刚发布的aar后,启动报错:java.lang.UnsatisfiedLinkError: dlopen failed: cannot locate symbol "_Unwind_GetRegionStart" referenced by "/data/app/xxx.xxx.xxx-Gd6BUqZwe-5ZOWXbDAf3JQ==/lib/arm64/libtrace-canary.so"...

如果是使用官方的 matrix-trace-canary 没有报错 而且改动代码很少,肯定不是改动代码导致的问题

疑问

这个是 NDK 版本的问题吗,如果是的话,推荐用什么版本的ndk呢

tennkou commented 1 year ago

android-ndk-r21e 编译后,不报错了,对应的 matrix version 是 2.1.0。有 matrix 版本 和 编译所需 NDK 版本的对照表吗,我是一个版本一个版本试的。