Связывание gnustl с проектом Android ndk с помощью stlport_static

В моих Android.mk и Application.mk я использую статическую библиотеку, которая строится с использованием stlpot_static, но я хочу использовать gnustl вместо stlport для сборки моего проекта, потому что мне нужна поддержка C++11 в моем проекте. Раньше я пользовалась APP_STL := stlport_shared Application.mk в моем и моем проекте был запущен успешно. Но сейчас я хочу сделать это APP_STL := gnustl_sharedпроект успешно компилируется, но во время выполнения происходит сбой, что выдает ошибку java.lang.UnsatisfiedLinkError: dlopen failed: cannot locate symbol "_ZNSt13_Filebuf_base12_M_page_sizeE", когда я проверил эту ошибку, я нашел эту зависимость в моей статической библиотеке, которая была построена с использованием stlport_static.

Как я могу использовать gnustl с моим проектом, не нарушая статическую библиотеку, которая зависит от stlport_static.

1 ответ

Вы не можете смешивать и сопоставлять STL в одном двоичном файле: https://android.googlesource.com/platform/ndk/+/master/docs/user/common_problems.md#Using-Mismatched-Prebuilt-Libraries

Другие вопросы по тегам