Houdini arm to x86 переводит "Неподдерживаемая функция" ошибка при использовании общего STL в приложении Android NDK

Я создал проект Android Studio из этого примера проекта NDK, предоставленного Google, и изменил несколько вещей, чтобы попытаться использовать перевод Houdini arm на x86:

  1. В app/build.gradle Я поставил abiFilters в armeabi-v7a,
  2. В Application.mk Я изменился APP_ABI от all в armeabi-v7a так что собственные библиотеки x86 не будут созданы.
  3. Также в Application.mk, Я изменился APP_STL от stlport_static в gnustl_shared,

Вы можете увидеть модифицированный код в этом репо.

Затем я запустил приложение в эмуляторе BlueStacks, который поддерживает Houdini. Я получаю следующую ошибку:

11-21 00:42:19.742 9947-9947/? D/houdini: [9947] Loading library(version: 4.0.8.45720 RELEASE)... successfully.
11-21 00:42:19.742 9947-9947/? D/houdini: [9947] Unsupported feature (ID:0x10600cae).
11-21 00:42:19.742 9947-9947/? D/houdini: [9947] Open Native Library /data/app-lib/com.sample.teapot-2/libTeapotNativeActivity.so failed.
...
java.lang.RuntimeException: Unable to start activity ComponentInfo{com.sample.teapot/com.sample.teapot.TeapotNativeActivity}: java.lang.IllegalArgumentException: Unable to load native library: /data/app-lib/com.sample.teapot-2/libTeapotNativeActivity.so

Если я сделаю APP_STL любое из поддерживаемых значений с shared Я получаю эту ошибку, и с static это работает отлично. Я хотел бы получить shared работает, чтобы решить эту проблему в React Native. Общий STL не работает с Houdini? Есть обходные пути?

0 ответов

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