Android N Preview dlopen() "не имеет заголовков разделов" Ошибка

Я сжал библиотеки моего Android-приложения с помощью UPX. При запуске на устройствах Android N Priview5 возникает ошибка: "Ошибка dlopen: в xxx.so нет заголовков разделов".

Я нахожу список изменений Android Linker: http://android-developers.blogspot.com/2016/06/android-changes-for-ndk-developers.html

В нем говорится: "Каждый файл ELF содержит дополнительную информацию, содержащуюся в заголовках разделов. Эти заголовки должны присутствовать сейчас, потому что динамический компоновщик использует их для проверки работоспособности".

Но после сжатия с UPX заголовки разделов ELF отсутствуют, как я могу решить эту проблему.

ELF Header:

Магия: 7f 45 4c 46 01 01 01 00 00 00 00 00 00 00 00 00

Класс: ELF32

Данные: дополнение 2, little endian

Версия: 1 (текущая)

OS / ABI: UNIX - Система V

Версия ABI: 0

Тип: DYN (Общий объектный файл)

Машина: ARM

Версия: 0x1

Адрес точки входа: 0x0

Начало заголовков программы: 52 (байт в файл)

Начало заголовков разделов: 0 (байт в файл)

Флаги: 0x5000000, версия 5 EABI

Размер этого заголовка: 52 (байт)

Размер заголовков программы: 32 (байты)

Количество заголовков программы: 7

Размер заголовков разделов: 0 (байт)

Количество заголовков разделов: 0

Индекс таблицы строк заголовка раздела: 0

1 ответ

https://github.com/upx/upx/issues/65

Вы можете добавить параметр:

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