Не удается найти символ __gnu_Unwind_Find_exidx при запуске Rust target armv7- linux -androideabi - PullRequest
0 голосов
/ 25 апреля 2020

Я пишу код Rust для цели архитектуры armv7-linux-androideabi.

Код написан на Dart / Flutter с одной критичной для производительности библиотекой, написанной на Rust. Я использую dart:ffi для его вызова.

В Android Studio Он прекрасно работает в эмуляторе Android с целью i686-linux-android.

Но когда я проверяю его на своем android телефон (с использованием цели armv7-linux-androideabi) во время выполнения вылетает с ошибкой:

E / flutter (4722): [ОШИБКА: флаттер / lib / ui / ui_dart_state. cc (157) )] Необработанное исключение: недопустимый аргумент (ы): не удалось загрузить динамическую библиотеку (ошибка dlopen: невозможно найти символ "__gnu_Unwind_Find_exidx", на который ссылается "/data/app/com.example.androidtest-2/lib/arm/libcerberus.so" ...)

Я проверил с помощью nm libcerberus.so и ссылка на __gnu_Unwind_Find_exidx указана, но не определена.

Любой способ принудительного вытягивания в этой функции, который кажется заданным c Арм. ?

Стив

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...