- Я перешел на использование общей библиотеки libc++
- Я добавил target_compile_options(${TARGET} PUBLIC -fsanitize=hwaddress -fno-omit-frame-pointer) target_link_options(${TARGET} PUBLIC -fsanitize=hwaddress) в CMakeLists.txt.
- Я собираю только для Arm64-v8a
- Я добавил useLegacyPackaging = true
- Я добавил отладку true
- Я добавил app/src/main/resources/lib/wrap.sh
- Без строк target_compile_options и target_link_options приложение работает правильно.
- APK содержит libc++_shared.so, показывающий, что я правильно включил общий доступ к libc++
- Апк-файл содержит /lib/wrap.sh
- Приложение использует один .so: libfoobar.so и readelf -d libfoobar.so | grep NEEDED выводит:
Код: Выделить всё
0x0000000000000001 (NEEDED) Shared library: [libclang_rt.hwasan-aarch64-android.so]
0x0000000000000001 (NEEDED) Shared library: [libandroid.so]
0x0000000000000001 (NEEDED) Shared library: [liblog.so]
0x0000000000000001 (NEEDED) Shared library: [libEGL.so]
0x0000000000000001 (NEEDED) Shared library: [libOpenSLES.so]
0x0000000000000001 (NEEDED) Shared library: [libc++_shared.so]
0x0000000000000001 (NEEDED) Shared library: [libGLESv2.so]
0x0000000000000001 (NEEDED) Shared library: [libm.so]
0x0000000000000001 (NEEDED) Shared library: [libdl.so]
0x0000000000000001 (NEEDED) Shared library: [libc.so]
< /code>
Когда я запускаю APK на моем Pixel 7 с Android 14, происходит следующая ошибка: < /p>
dlopen failed: TLS symbol "(null)" in dlopened "/apex/com.android.runtime/lib64/bionic/libclang_rt.hwasan-aarch64-android.so"
Код: Выделить всё
09-13 21:43:19.312 28028 28028 D nativeloader: Load /data/app/~~VeP7A7hHnvshxaanDdLEyQ==/com.qux-GBK8s7jkWQ4TXb2mglMtUA==/lib/arm64/libfoobar.so using ns clns-4 from class loader (caller=/data/app/~~VeP7A7hHnvshxaanDdLEyQ==/com.qux-GBK8s7jkWQ4TXb2mglMtUA==/base.apk!classes2.dex): dlopen failed: TLS symbol "(null)" in dlopened "/apex/com.android.runtime/lib64/bionic/libclang_rt.hwasan-aarch64-android.so" referenced from "/apex/com.android.runtime/lib64/bionic/libclang_rt.hwasan-aarch64-android.so" using IE access model
Есть какие-нибудь сведения о том, что происходит?
Подробнее здесь: https://stackoverflow.com/questions/789 ... ymbol-null