我用 C++ 构建了一个库,我想使用 NDK 将其包含在我的 Android 应用程序中。但是,我的图书馆需要使用 ICU4C。 我一直在尝试为 Android 编译 ICU,我在这里查看了很多关于 SO 的问题,但我仍然无法将 ICU 编译为 .a Android 文件。我不确定执行此操作的最佳方法。 有没有人使用 NDK 在 ICU 上取得成功?
顺便说一句,我希望使用 ICU 51.2,除非有充分的理由使用旧版本。
最佳答案
您可以通过在 Android.mk
LOCAL_CFLAGS := -DANDROID -fdata-sections -ffunction-sections
LOCAL_CPPFLAGS := -DANDROID -frtti -fno-exceptions -fdata-sections -ffunction-sections
如果您毫无异常(exception)地使用 Android NDK,您将需要破解缺少的 cxa_bad_typeid()
extern "C" std::type_info const& __cxa_bad_typeid()
{
// just return something
return typeid(void*);
}
关于c++ - 在 Android NDK 项目中包含 ICU,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18235428/