我有一个带有第三方库(.so
)的Android项目。与第三方.so
文件一起,我还提供了第三方库所需的libc++_shared.so
库。
构建Android项目并在Android设备(Android 6.x)上运行后,我收到此abort
消息:
[INFO] libc: /Volumes/Android/buildbot/out_dirs/aosp-ndk-r11-release/build/tmp/build-72234/build-libc++/ndk/sources/cxx-stl/llvm-libc++/../llvm-libc++abi/libcxxabi/src/abort_message.cpp:74: void abort_message(const char *, ...): assertion "terminating with uncaught exception of type
问题在于我没有在我的系统(MacOS
)中配置 Android NDK r11 。我下载并配置了 Android NDK r16 。我还可以在构建期间看到使用已配置 NDK(我ANDROID_NDK
中已配置的.bash_profile
的路径。)
此llvm-libc++
r11
与第三方.so
库不兼容。为什么我从 NDK r11 获取中止消息?
答案 0 :(得分:1)
回答我自己的问题。我正在使用的移动应用程序开发平台(Appcelerator Titanium)似乎在应用程序构建阶段注入了自己的libc++_shared.so
文件。这就是我自己的libc++_shared.so
文件没有进入APK
文件的原因。这是另一个文件。该文件来自 Android NDK r11 。
在构建阶段复制的文件位于Titanium SDK中:sdk/android/native/libs/*/libc++_shared.so
。